Problème select
jer3my59
Messages postés
106
Statut
Membre
-
Alain_42 Messages postés 5413 Statut Membre -
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,
je voudrais faire quelque chose de simple.
<SELECT NAME="moi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
</SELECT>
<SELECT NAME="toi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
<input type="submit" value="Valider" />
</SELECT>
le resultat dans mon .php changera en fonction des NAME.
exemple: <select name="moi" ..... </select et <select name="toi" ......</select>
si dans mon .php je dis
si toi + moi = nous
sinonsi toi + lui = pas nous
sinonsi moi ou lui = pas ok
et bien si je definis dans mon premier select moi et le second toi j'aurais toujours "nous" même si je selectionne toi et lui... comment y remedier ? merci.
ps: vous avez le droit de rire de mon exemple !! :D c'est un petit délire avec un ami que j'aimerai mettre au point et aussi un peu pour progresser :D
je voudrais faire quelque chose de simple.
<SELECT NAME="moi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
</SELECT>
<SELECT NAME="toi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
<input type="submit" value="Valider" />
</SELECT>
le resultat dans mon .php changera en fonction des NAME.
exemple: <select name="moi" ..... </select et <select name="toi" ......</select>
si dans mon .php je dis
si toi + moi = nous
sinonsi toi + lui = pas nous
sinonsi moi ou lui = pas ok
et bien si je definis dans mon premier select moi et le second toi j'aurais toujours "nous" même si je selectionne toi et lui... comment y remedier ? merci.
ps: vous avez le droit de rire de mon exemple !! :D c'est un petit délire avec un ami que j'aimerai mettre au point et aussi un peu pour progresser :D
9 réponses
bonjour,
voici le code php
<?php
if ($_POST["toi"] && $_POST["moi"]) {
echo "nous";
}
elseif ($_POST ["toi"] && $_POST["lui"]) {
echo "pas nous.";
}
elseif ($_POST ["moi"] || $_POST["lui"]) {
echo "pas ok";
}
?>
voici le code php
<?php
if ($_POST["toi"] && $_POST["moi"]) {
echo "nous";
}
elseif ($_POST ["toi"] && $_POST["lui"]) {
echo "pas nous.";
}
elseif ($_POST ["moi"] || $_POST["lui"]) {
echo "pas ok";
}
?>
OK, je vois le problème.
Tu confonds en fait le nom de la liste déroulante ("moi" et "toi"), et la valeur qu'elle prend.
Pour vérifier si la valeur de ta première liste déroulante est "toi", il faut faire le test suivant :
if ($_POST["moi"] == "toi")
Ce qui donne donc, pour ton premier test :
Je te laisse compléter...
Autre point, concernant ton code html. Je ne sais pas si c'est une erreur dans la copie sur le forum, mais ton bouton (balise <input>) est placé à l'intérieur du deuxième <select>. Il n'y a aucune garantie que le navigateur interprète ça correctement !
Xavier
Tu confonds en fait le nom de la liste déroulante ("moi" et "toi"), et la valeur qu'elle prend.
Pour vérifier si la valeur de ta première liste déroulante est "toi", il faut faire le test suivant :
if ($_POST["moi"] == "toi")
Ce qui donne donc, pour ton premier test :
if ($_POST["moi"] == "toi" && $_POST["toi"] == "moi")
echo "nous";
Je te laisse compléter...
Autre point, concernant ton code html. Je ne sais pas si c'est une erreur dans la copie sur le forum, mais ton bouton (balise <input>) est placé à l'intérieur du deuxième <select>. Il n'y a aucune garantie que le navigateur interprète ça correctement !
Xavier
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci de ta réponse xavier ça avance simplement il y a un soucis :x
imaginons je mets ce code :
<?php
if ($_POST["toi"] == "moi" && $_POST["moi"] == "toi") {
echo "nous";
}
elseif ($_POST ["toi"] == "moi" && $_POST["lui"]) {
echo "pas nous";
}
elseif ($_POST ["moi"] =="toi" || $_POST["lui"]) {
echo "pas ok";
}
?>
là j'applique strictement ce que tu m'as dis donc dans ma liste si je choisis moi et toi ça fonctionne puisqu'il y a que "toi" et "moi" qui interviennent or moi je veux aussi ce fameux "lui" sans rajouter de liste... il faudrait donc rajouter un "NAME" au select non ? je vois pas vraiment :s (je débute)
pour mon code html il donne ça :
<body>
<form action="onpeutpurienpourmoi.php" method="post">
<p>
<SELECT NAME="moi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
</SELECT>
<SELECT NAME="toi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
<input type="submit" value="Valider" />
</SELECT>
</p>
</form>
</body>
je ne pense pas qu'il y ai un soucis :) j'ai dû me tromper comme je n'ai pas c/c.
merci d'avance
imaginons je mets ce code :
<?php
if ($_POST["toi"] == "moi" && $_POST["moi"] == "toi") {
echo "nous";
}
elseif ($_POST ["toi"] == "moi" && $_POST["lui"]) {
echo "pas nous";
}
elseif ($_POST ["moi"] =="toi" || $_POST["lui"]) {
echo "pas ok";
}
?>
là j'applique strictement ce que tu m'as dis donc dans ma liste si je choisis moi et toi ça fonctionne puisqu'il y a que "toi" et "moi" qui interviennent or moi je veux aussi ce fameux "lui" sans rajouter de liste... il faudrait donc rajouter un "NAME" au select non ? je vois pas vraiment :s (je débute)
pour mon code html il donne ça :
<body>
<form action="onpeutpurienpourmoi.php" method="post">
<p>
<SELECT NAME="moi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
</SELECT>
<SELECT NAME="toi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
<input type="submit" value="Valider" />
</SELECT>
</p>
</form>
</body>
je ne pense pas qu'il y ai un soucis :) j'ai dû me tromper comme je n'ai pas c/c.
merci d'avance
non tu n'as pas appliqué ce qu'il t'a dit:
elseif ($_POST ["toi"] == "moi" && $_POST["lui"]) {
il faut:
il faut comparer à chaque fois avec $_POST["name_liste"] == valeur de l'option choisie dans la liste portant le name
elseif ($_POST ["toi"] == "moi" && $_POST["lui"]) {
il faut:
elseif ($_POST ["toi"] == "moi" && $_POST["moi"]=="lui") {
il faut comparer à chaque fois avec $_POST["name_liste"] == valeur de l'option choisie dans la liste portant le name
Et remplace ça :
<SELECT NAME="toi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
<input type="submit" value="Valider" />
</SELECT>
par ça :
<SELECT NAME="toi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
</SELECT>
<input type="submit" value="Valider" />
<SELECT NAME="toi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
<input type="submit" value="Valider" />
</SELECT>
par ça :
<SELECT NAME="toi">
<OPTION VALUE="toi"> toi
<OPTION VALUE="moi"> moi
<OPTION VALUE="lui"> lui
</SELECT>
<input type="submit" value="Valider" />