Remplir liste déroulante BdD MySQL

Résolu/Fermé
hardgratte
Messages postés
446
Date d'inscription
mardi 16 juin 2009
Statut
Membre
Dernière intervention
19 mai 2022
- 19 avril 2012 à 13:14
hardgratte
Messages postés
446
Date d'inscription
mardi 16 juin 2009
Statut
Membre
Dernière intervention
19 mai 2022
- 19 avril 2012 à 14:46
Bonjour,

Je souhaiterais remplir une liste déroulante d'après une base de donnée MySQL.
Ce sujet a déjà été traité d nombreuses fois mais je n'ai pas réussi à résoudre mon problème.

Voici le code : (DSL ne ne sait pas mettre le code dans une fenêtre spéciale sur le forum)

-------------------------------------------------------------------------------------------------------------
<select name="choix du nom" size="1" style="width:150px">

<?php
mysql_connect ('localhost', 'root', '');
mysql_select_db ('soulet', $base) ;

$reponse = mysql_query("SELECT Designation FROM produits");
while ($donnees = mysql_fetch_array($reponse))
{
?>
<option value="<?php echo $donnees['Designation'] ?>"><?php echo $donnees['Designation'] ?></option>
<?php
}
?>
</select>
-------------------------------------------------------------------------------------------------------------

La liste déroulante s'affiche mais il n'y a rien dedans.
Si quelqu'un a une solution merci d'avance

Merci d'avance

3 réponses

hardgratte
Messages postés
446
Date d'inscription
mardi 16 juin 2009
Statut
Membre
Dernière intervention
19 mai 2022
73
19 avril 2012 à 13:56
Le code est alors le suivant :

-------------------------------------------------------------------
<select name="choix du nom" size="1" style="width:150px">

<?php
mysql_connect ('localhost', 'root', '');

mysql_select_db ('soulet', $base) ;

$reponse = mysql_query("SELECT Designation FROM produits");
while ($donnees = mysql_fetch_array($reponse));
{
?>
<option value="<?php echo $donnees['Designation']; ?>"><?php echo $donnees['Designation']; ?></option>;
<?php
}
?>
</select>
----------------------------------------------------------------------------------------------

Ça n'as rien changé

Et le code source est le même que précédemment (pas de message d'erreur).
2
naruto-94
Messages postés
865
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
20 décembre 2012
188
19 avril 2012 à 14:00
t'as regardé le code html retourné à partir de ton navigateur ?
0
vordano
Messages postés
1682
Date d'inscription
mardi 12 juillet 2011
Statut
Membre
Dernière intervention
20 juillet 2012
313
Modifié par vordano le 19/04/2012 à 14:01
met un <?php echo $donnees['Designation']; ?> juste avant ton <option
et enlève le ; juste après le while()
0
hardgratte
Messages postés
446
Date d'inscription
mardi 16 juin 2009
Statut
Membre
Dernière intervention
19 mai 2022
73
19 avril 2012 à 14:12
Ça ne change rien.

PS : lorsque je poste en faisant "répondre au sujet", le message ne s'affiche pas!
0
hardgratte
Messages postés
446
Date d'inscription
mardi 16 juin 2009
Statut
Membre
Dernière intervention
19 mai 2022
73
Modifié par hardgratte le 19/04/2012 à 14:18
N'y a t-il pas une manip spéciale a faire lorsque j'insère du PHP dans une page HTML? (autre que <?php ... ?>)
0
naruto-94
Messages postés
865
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
20 décembre 2012
188
19 avril 2012 à 14:25
non y a pas plus simple , il faut juste que ta page soit juste bien enregistré en .php

là pour régler ton probleme tu vas devoir tester chaque action que tu viens de faire .. mais si au moins tu regardais le code source html que retournes ta page , je suis sur que tu trouverais le probleme directement :)
0
naruto-94
Messages postés
865
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
20 décembre 2012
188
19 avril 2012 à 13:45
regardes le code source html de la page retourné , tu verras s'il y a un truc qui cloche .

normalement tu verras des erreurs T_STRING je crois , tu as oublié les point-virgules après les echo dans tes options .
0
hardgratte
Messages postés
446
Date d'inscription
mardi 16 juin 2009
Statut
Membre
Dernière intervention
19 mai 2022
73
19 avril 2012 à 13:49
Qu'entend tu par ma page retournée ?

Je devrais placer des point-virgules où ? après "echo" ou après "echo $donnees['Designation']" ?

Merci à toi
0
naruto-94
Messages postés
865
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
20 décembre 2012
188
19 avril 2012 à 13:53
tu dois placer les points-virgules après "echo $donnees['Designation']" évidemment !

et j'entends par la page retourné , simplement la page php qui doit afficher le select dans ton navigateur ! en faisant clique droit -> afficher le code source de la page .
0
vordano
Messages postés
1682
Date d'inscription
mardi 12 juillet 2011
Statut
Membre
Dernière intervention
20 juillet 2012
313
19 avril 2012 à 13:53
en php, quand tu fini une ligne d'instruction, tu dois mettre un ; (c'est obligatoire)
0