Donc voilà je suis en train de créer un site internet depuis presque 1 ans ( une passion à côté du travail ) et je rencontre un problème avec un menu déroulant en php et MySQL
Je m'explique: J'ai créer une table pays dont j'ai mit un champ id et pays classé par odre ID.
Le problème n'est pas dans ma base de donné mais le code php en lui même Je met mon code directement pour vous puissiez voir:
<?php $dnn = mysql_fetch_array(mysql_query('SELECT id,pays FROM pays'));
Salut, c'est normal, en fait ta requête renvoie plusieurs résultats on est d'accord. Donc tu dois faire une boucle pour afficher chacun d'entre eux, à l'aide de WHILE par exemple.
Haa ! Merci beaucoup je vient de comprendre et je suis parti voir sur php manual
Car j'ai essayé ceci de mon côté
$bdd = new PDO('mysql:host=sql.site.com;dbname=truc1', 'truc2', 'pass'); $select = 'SELECT id,pays FROM pays ORDER BY id'; $result = mysql_query($select) or die ('Erreur : '.mysql_error() ); while($row2=mysql_fetch_array($result)) { echo '<select name="pays">'; echo '<option value="'.$row2['id'].'">'.$row2['pays'].'</option>'; } echo '</select><br />';
Mais il m'affiché tout les pays mit dans ma base de donné avec qu'un seul champ dans un menu déroulant =/
Merci Wolf18 Parcontre, j'ai un souci d'encodage =S Je suis parti voir dans ma table et je l'est mit en UTF-8 mais rien n'y fait, aurait-tu une idée sur ce point-ci ?
En faite ce système de menu déroulant je souhaité l'utilisé pour mon espace membre et quand je met par exemple " France " et que je valide, dans ma base de donné c'est écrit ' 20 ' qui représente mon l'age du membre. J'ai regardé dans mon code et apparament je n'est pas de problème, j'ai tout bien mit =S
Quand tu affiche ta liste déroulante avec tes pays tu indiques aussi son id (le numéro qui est unique et qui est associé à ton pays dans ta table SQL 1->france,2->argentine...
Et quand tu enregistre le choix de la liste déroulantes des pays tu n'as pas le pays d'enregistré mais son id associé (en gras)