[php / html] Récupérer 2 variables par select [Résolu/Fermé]

Signaler
Messages postés
597
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
3 février 2020
-
 dada26 -
Bonsoir,

J'aimerais faire un truc en html/php, je sais même pas si c'est possible.

Je fais un select tout bête, dans une boucle en php. L'intérêt de la boucle est de récupérer toutes les valeurs dans une base de données pour les mettre en valeurs dans les balises <option> du select.

Le truc c'est que je voudrais également récupérer l'id de chaque valeur.
Comment faire ?
Est-ce qu'on peut mettre une variable qui se met à jour sur la même page que le select ?
Est-ce qu'on peut faire un genre de "double select" , avec un select caché et pas l'autre ?

Merci pour vos réponse.


J'ai trouvé ça en cherchant un peu, mais j'y comprends rien :
https://codes-sources.commentcamarche.net/

6 réponses

Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
350
ben tu fait fait un truc comme ça (dsl je vais etre rapide ce soir)
<form action="page_recup.php" method="post">
<select name="nom">
la tu fait une boucle while qui te recupere tt tes enregistrements de ta BD du style while($res)
{
echo'option value="'. $id_recupere_dans_ta_requete.'"><"'.$nom_recupere_dans_ra_requete."'> </option>';
</select>
}
ensuite dans ta page page_recup.php tu recupere l'id choisi simplement en faisant un $id=$_post['nom'];

je file au dodo je te laisse creuser le probleme
4
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
350
de rien avec plaisir ;-)
Bonsoir,

Ayant un probleme similaire, je me permet de reprendre l'exemple ci-dessus afin de vous demander si il est possible de recuperer le $nom en meme temps que le $id ?
Messages postés
597
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
3 février 2020
83
Génial ça marche !
Un grand merci à toi qui m'as appris ce truc, malgré la fatigue !


Voici la synthaxe correcte, dans la page de saisie :

echo "<form action=\"test.php\" method=\"post\">";

$champs=mysql_query("select * from categ");
while ($donnee=mysql_fetch_array($champs))
{
$id2=$donnee['id_categ'];
$cat2=$donnee['catego'];
echo "
<select name=\"nom\">
<option value=\"". $id2."\">".$cat2."
</select>
";
}
echo "<input type=submit value=\"ok\">
</form>";


Et dans la page de traitement :

$id=$_POST['nom'];


Encore merci Lewis :-)
Messages postés
597
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
3 février 2020
83
Je viens juste de tilter, mon code ne va pas.

Il ne faut pas mettre le <select> dans la boucle while !
La balise d'ouverture doit être juste avant, et celle qui ferme juste après.

Voilà pour la rectification.
Messages postés
2557
Date d'inscription
samedi 21 juillet 2007
Statut
Membre
Dernière intervention
30 mai 2015
350
tu veut faire quoi exactement ?

par exemple tu a un select et lorsqu'on fait un choix en fonction du choix un autre select s'affiche ?

ou tu veut englober dans le meme select plusieurs bases de données ?
Messages postés
597
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
3 février 2020
83
En fait j'ai une base de données avec plusieurs tables.
Dans une de ces tables, j'ai 2 champs qui m'intéressent : id et nom.

Dans mon select (celui qui est dans ma page php), je crée une liste de noms, donc en les prenant dans ma table.
Ensuite, dans d'autres pages, les données sont traitées, et je voudrais travailler avec l'id, et pas avec le nom.

Donc je dois récupérer l'id qui est en corrélation avec le nom choisi par l'utilisateur dans le menu déroulant. C'est ça que je sais pas faire.

J'espère que je suis compréhensible. :-S