Requête mysql dans une liste déroulante
Résolu
T-Law
-
T-Law -
T-Law -
Bonjour,
Je rencontre actuellement un petit problème de formulaire. Je voudrais juste afficher le resultat d'une requete Mysql dans une liste déroulante. J'ai donc fais ceci :
<p><label for ="siteN1"> - Site N1 : </label>
<?php
echo"<select name='siteN1'>";
// Connection à la base
$Cx_Serv=mysql_connect("localhost","root","");
if(!$Cx_Serv)
{
echo"Connexion au serveur impossible<br>";
}
else
{
echo"connexion réussi<br/>";
}
mysql_select_db("sami",$Cx_Serv);
// fin du module de connexion
$reponse = mysql_query("SELECT DISTINCT SITEN1_LIBELLE
FROM siten1
ORDER BY SITEN1_LIBELLE;"); // Requête SQL
// On fait une boucle pour lister tout ce que contient la table :
while ($resultat = mysql_fetch_assoc($reponse) )
{
echo "<option value='".$resultat['SITEN1_LIBELLE']."'></option>";
}
echo "</select>";
mysql_close($Cx_Serv); // Déconnexion
?>
Alors ça marche j'ai effectivement le resultat de ma requete dans la liste déroulante et je peux choisir le champs que je veux, le seul problème c'est que les champs en questions ne s'affiche pas donc en fait on séléctionne des champs à l'aveugle.
Je me doute qu'il me manque quelque chose du style : echo $resultat['SITEN1_LIBELLE']
Mais je n'arrive pas à savoir ou ni comment le mettre.
Si quelqu'un peut m'aider.
Merci d'avance! =)
Je rencontre actuellement un petit problème de formulaire. Je voudrais juste afficher le resultat d'une requete Mysql dans une liste déroulante. J'ai donc fais ceci :
<p><label for ="siteN1"> - Site N1 : </label>
<?php
echo"<select name='siteN1'>";
// Connection à la base
$Cx_Serv=mysql_connect("localhost","root","");
if(!$Cx_Serv)
{
echo"Connexion au serveur impossible<br>";
}
else
{
echo"connexion réussi<br/>";
}
mysql_select_db("sami",$Cx_Serv);
// fin du module de connexion
$reponse = mysql_query("SELECT DISTINCT SITEN1_LIBELLE
FROM siten1
ORDER BY SITEN1_LIBELLE;"); // Requête SQL
// On fait une boucle pour lister tout ce que contient la table :
while ($resultat = mysql_fetch_assoc($reponse) )
{
echo "<option value='".$resultat['SITEN1_LIBELLE']."'></option>";
}
echo "</select>";
mysql_close($Cx_Serv); // Déconnexion
?>
Alors ça marche j'ai effectivement le resultat de ma requete dans la liste déroulante et je peux choisir le champs que je veux, le seul problème c'est que les champs en questions ne s'affiche pas donc en fait on séléctionne des champs à l'aveugle.
Je me doute qu'il me manque quelque chose du style : echo $resultat['SITEN1_LIBELLE']
Mais je n'arrive pas à savoir ou ni comment le mettre.
Si quelqu'un peut m'aider.
Merci d'avance! =)
A voir également:
- Requête mysql dans une liste déroulante
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Liste code ascii - Guide
- Supprimer une liste déroulante excel - Forum Word
1 réponse
Bonjour,
Je vois deux problèmes dans ton code.
Alors, pour en revenir à la base, en HTML, à quoi ressemble une balise <select> ?
À ça :
Or ton code va générer quelque chose qui ressemble à :
Je te laisse comparer et corriger :)
Xavier
Je vois deux problèmes dans ton code.
Alors, pour en revenir à la base, en HTML, à quoi ressemble une balise <select> ?
À ça :
<select name='truc'> <option value='valeur1'>Texte1</option> <option value='valeur2'>Texte2</option> <option value='valeur3'>Texte3</option> </select>
Or ton code va générer quelque chose qui ressemble à :
<select name='truc'> connexion réussie<br /> <option value='valeur1'></option> <option value='valeur2'></option> <option value='valeur3'></option> </select>
Je te laisse comparer et corriger :)
Xavier
Pour le connexion, le problème n'est pas de le supprimer ou pas, c'est surtout qu'il ne devrait pas être à l'intérieur du <select>
echo "<option value={$resultat[SITEN1_LIBELLE]}>{$resultat[SITEN1_LIBELLE]}</option>";
Et ça marche merci c'était tout con en fait, j'étais trop persuadé que ça venait de mon php.