IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Affichage valeur checked liste déroulante sur formulaire


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Webdesigner
    Inscrit en
    Avril 2014
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Avril 2014
    Messages : 92
    Par défaut Affichage valeur checked liste déroulante sur formulaire
    Bonjour à tous,

    Mon formulaire contient une liste déroulante dynamique servant à renseigner le champ "colocataireTwin", issue de la concaténation des 2 champs "nom" et "prénom" de ma table 'olympiades'.
    Une fois le formulaire renseigné, le user peut y revenir en modification.
    Je souhaite donc qu'il retrouve affichée dans le select la valeur précédemment choisie et enregistrée en BDD.

    Or le code suivant m'affiche invariablement un seul et même nom/prénom du select, qui n'est absolument pas la valeur renseignée en base.

    Il y a un hic dans mon code mais j'ai beau chercher je n'arrive pas à comprendre où :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <select name="colocataireTwin" id="choixColocataireTwin">
    <?php  
    	echo	"<option value=\"\">Choisir</option>";
    	require "connect.php";
    	$reponse = $bdd->query('SELECT * FROM olympiades ORDER BY nom');
    	$donnees = $reponse->fetch();
    	$valeurForm = $donnees['colocataireTwin'];
    	while ($donnees = $reponse->fetch()) { 
    		if($donnees['nom'].' '.$donnees['prenom'] == $valeurForm){
    		echo '<option value="'.$donnees['nom'].' '.$donnees['prenom'].'" selected="selected">'.$donnees['nom'].' '.$donnees['prenom'].'</option>'; 
    		} else {
    		echo '<option value="'.$donnees['nom'].' '.$donnees['prenom'].'">'.$donnees['nom'].' '.$donnees['prenom'].'</option>';	
    		}
    	} 
    ?> 
    </select>
    Merci par avance pour vos lumières.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    1- dans <option value, il faut mettre l'id (auto-incrémenté), car il est UNIQUE.

    2- 'SELECT * : NON, il faut mettre les colonnes nécessaires et suffisantes.

    3- il faut échapper les données à afficher avec htmlspecialchars().

  3. #3
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    'il retrouve affichée dans le select la valeur précédemment choisie et enregistrée en BDD
    Et c'est ou dans ton code qu'il y a ça ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  4. #4
    Membre confirmé
    Femme Profil pro
    Webdesigner
    Inscrit en
    Avril 2014
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Avril 2014
    Messages : 92
    Par défaut
    Merci pour vos réponses.

    @jreaux62 :

    1- dans <option value, il faut mettre l'id (auto-incrémenté), car il est UNIQUE.
    Je ne sais pas où et comment insérer l'id dans <option value...

    2- 'SELECT * : NON, il faut mettre les colonnes nécessaires et suffisantes.
    Là oui je vois très bien.

    3- il faut échapper les données à afficher avec htmlspecialchars().
    Idem point 1, je ne vois pas comment faire ça...


    @sabotage :

    Pour moi le code qui devrait afficher la valeur renseignée en BDD est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if($donnees['nom'].' '.$donnees['prenom'] == $valeurForm){
    		echo '<option value="'.$donnees['nom'].' '.$donnees['prenom'].'" selected="selected">'.$donnees['nom'].' '.$donnees['prenom'].'</option>'; 
    		}
    Mais vu ta question je me trompe sans doute...
    D'où ma demande d'aide en fait.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Quelle est la structure de la table SQL "olympiades ?

  6. #6
    Membre confirmé
    Femme Profil pro
    Webdesigner
    Inscrit en
    Avril 2014
    Messages
    92
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Webdesigner

    Informations forums :
    Inscription : Avril 2014
    Messages : 92
    Par défaut
    J'ai 27 champs... Tu as besoin que je te liste tous les champs ?

  7. #7
    Invité
    Invité(e)
    Par défaut
    MOI, je n'ai besoin de rien...

    Citation Envoyé par jreaux62 Voir le message
    ...il faut mettre les colonnes nécessaires et suffisantes...
    ... dont l'ID, auto-incrémenté DONC UNIQUE.

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par E. Nigma Voir le message
    J'ai 27 champs... Tu as besoin que je te liste tous les champs ?
    Jusqu'ici, tu en as montré... zéro.

    Fais un effort...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 05/12/2015, 18h57
  2. Liste déroulante sur formulaire continu
    Par Lilou51 dans le forum VBA Access
    Réponses: 6
    Dernier message: 18/06/2014, 14h57
  3. [AC-2007] Modification de valeur d'une liste déroulante sur formulaire
    Par cocoda dans le forum IHM
    Réponses: 4
    Dernier message: 11/10/2012, 18h16
  4. [AC-2003] Contenu zone de liste déroulante sur formulaire continu
    Par willytito dans le forum VBA Access
    Réponses: 3
    Dernier message: 28/12/2011, 18h11
  5. contrôle liste déroulante sur formulaire
    Par papagei2 dans le forum IHM
    Réponses: 4
    Dernier message: 11/11/2008, 13h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo