Changement d' option value PHP
Résolu
bip
-
bip -
bip -
Bonjour,
aidez moi ! j'ai un code en php qui me pose pb
je voudrais que les option values change lorsque le 1er option value change ! mais sans javascript car je n'utilise pas de bdd. voila mon bout de code :
le 1er option value
<tr>
<td width="101"> <strong>Destination</strong>: </td>
<td width="437"><select name="destination">
<option value="sey">Seychelles</option>
<option value="nep">Népal</option>
<option value="irl">Irlande</option>
</select></td>
</tr>
<?php
$destination = $_POST['destination'];
if ($destination='sey')
{
echo '<tr>
<td width="101"> <strong>Hôtel</strong>: </td>
<td width="437"><select name="hotel">
<option value="sey">Seychelles</option>
<option value="nep">Népal</option>
<option value="irl">Irlande</option>
</select></td>
</tr>';
}
else
{
echo '<tr>
<td width="101"> <strong>Hôtel</strong>: </td>
<td width="437"><select name="hotel">
<option value="sey">nfsdf</option>
<option value="nep">fdsf</option>
<option value="irl">fsddfs</option>
</select></td>
</tr>';
}
aidez moi ! j'ai un code en php qui me pose pb
je voudrais que les option values change lorsque le 1er option value change ! mais sans javascript car je n'utilise pas de bdd. voila mon bout de code :
le 1er option value
<tr>
<td width="101"> <strong>Destination</strong>: </td>
<td width="437"><select name="destination">
<option value="sey">Seychelles</option>
<option value="nep">Népal</option>
<option value="irl">Irlande</option>
</select></td>
</tr>
<?php
$destination = $_POST['destination'];
if ($destination='sey')
{
echo '<tr>
<td width="101"> <strong>Hôtel</strong>: </td>
<td width="437"><select name="hotel">
<option value="sey">Seychelles</option>
<option value="nep">Népal</option>
<option value="irl">Irlande</option>
</select></td>
</tr>';
}
else
{
echo '<tr>
<td width="101"> <strong>Hôtel</strong>: </td>
<td width="437"><select name="hotel">
<option value="sey">nfsdf</option>
<option value="nep">fdsf</option>
<option value="irl">fsddfs</option>
</select></td>
</tr>';
}
A voir également:
- Changement d' option value PHP
- Changement dns - Guide
- Option d'ergonomie - Guide
- Easy php - Télécharger - Divers Web & Internet
- Changement d'écriture facebook - Guide
- Changement d'heure - Guide
7 réponses
<html> <?php //le script s'appelle lui même, recup de la valeur liste1 if(isset($_POST['destination'])){ $destination=$_POST['destination']; }else{ $destination=""; //valeur par defaut pour premier affichage } ?> <form name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>"> <table> <tr> <td width="101"> <strong>Destination</strong>: </td> <td width="437"> <select name="destination"> <!-- la partie php dans option c'est pour conserver la selection liste 1 lors du réaffichage --> <option value="sey" <?php if($destination=='sey') echo 'selected'; ?> >Seychelles</option> <option value="nep" <?php if($destination=='nep') echo 'selected'; ?> >Népal</option> <option value="irl" <?php if($destination=='irl') echo 'selected'; ?> >Irlande</option> </select> </td> </tr> <tr> <td colspan="2"> <!-- tu ne veux pas de JS alors il faut un bouton pour pouvoir continuer --> <!-- si tu ne veux pas de bouton alors il te faut un tout petit peut de JS, dans la balise select tu mets: <select name="destination"> onChange="Submit();" > --> <input type="submit" name="continuer" value="Continuer"> </td> </tr> <?php if($destination !=""){ //affichage 2 ieme liste en fct choix premiere //partie commune $liste2='<tr> <td width="101"> <strong>Hôtel</strong>: </td> <td width="437"><select name="hotel">'; //on concatene avec la partie differente en fct de $destination switch ($destination){ case 'sey': $liste2.='<option value="A">A</option> <option value="B">B</option> <option value="C">C</option>'; break; case 'nep': $liste2.='<option value="D">D</option> <option value="E">E</option> <option value="F">F</option>'; break; case 'irl': $liste2.='<option value="G">G</option> <option value="H">H</option> <option value="J">J</option>'; break; } //fin de partie commune $liste2.='</select></td></tr>'; //affichage echo $liste2; } ?> </table> </form> </html>
si tu veux acceder à une autre page à la fin il faut effectivement modifier un peu le onChange
<html> <head> <script type="text/javascript"> //fonction javascript pour appeller la même page juste pour generer la liste 2 function gene_liste2(){ document.form1.action="le nom de ta page actuelle.php"; document.form1.submit(); } </script> </head> <body> <?php //le script s'appelle lui même, recup de la valeur liste1 if(isset($_POST['destination'])){ $destination=$_POST['destination']; }else{ $destination=""; //valeur par defaut pour premier affichage } ?> <form name="form1" method="post" action="la_page_suivante.php"> <table> <tr> <td width="101"> <strong>Destination</strong>: </td> <td width="437"> <select name="destination" onChange="gene_liste2();"> <!-- la partie php dans option c'est pour conserver la selection liste 1 lors du réaffichage --> <option value="sey" <?php if($destination=='sey') echo 'selected'; ?> >Seychelles</option> <option value="nep" <?php if($destination=='nep') echo 'selected'; ?> >Népal</option> <option value="irl" <?php if($destination=='irl') echo 'selected'; ?> >Irlande</option> </select> </td> </tr> <?php if($destination !=""){ //affichage 2 ieme liste en fct choix premiere //partie commune $liste2='<tr> <td width="101"> <strong>Hôtel</strong>: </td> <td width="437"><select name="hotel">'; //on concatene avec la partie differente en fct de $destination switch ($destination){ case 'sey': $liste2.='<option value="A">A</option> <option value="B">B</option> <option value="C">C</option>'; break; case 'nep': $liste2.='<option value="D">D</option> <option value="E">E</option> <option value="F">F</option>'; break; case 'irl': $liste2.='<option value="G">G</option> <option value="H">H</option> <option value="J">J</option>'; break; } //fin de partie commune $liste2.='</select></td></tr>'; //affichage echo $liste2; } ?> <tr> <td colspan="2"> <input type="submit" name="terminer" value="Terminer"> </td> </tr> </table> </form> </body> </html>
salut toi!
il faut ktu face <html><head><title></title></head><body></body></html>
voila la réponse à ton problème a+ bisou
il faut ktu face <html><head><title></title></head><body></body></html>
voila la réponse à ton problème a+ bisou
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mais sans javascript car je n'utilise pas de bdd
je ne vois pas le rapport entre javascript et la BDD, si ce n'est via Ajax
ensuite une erreur d'inattention je pense:
if ($destination='sey') le test d'égalité c'est ==
sinon je ne comprend pas ton pb ?
je ne vois pas le rapport entre javascript et la BDD, si ce n'est via Ajax
ensuite une erreur d'inattention je pense:
if ($destination='sey') le test d'égalité c'est ==
sinon je ne comprend pas ton pb ?
j'ai aussi essayé les ==
enfaite le pb c'est que,
j'ai une 1ere liste déroulante
et il faut que la liste déroulante qui est juste en dessous change
exemple:
Si
LISTE 1 = SEY
donc LISTE 2 = A, B ou C
SINON
LISTE 2 = D, E ou F
je voudrais ca mais sans le javascript
j'ai essayé mon code (qui est + haut) mais ca ne fonctionne pas
enfaite le pb c'est que,
j'ai une 1ere liste déroulante
et il faut que la liste déroulante qui est juste en dessous change
exemple:
Si
LISTE 1 = SEY
donc LISTE 2 = A, B ou C
SINON
LISTE 2 = D, E ou F
je voudrais ca mais sans le javascript
j'ai essayé mon code (qui est + haut) mais ca ne fonctionne pas
bonjour,
merci le code fonctionne ! ;)
mais y a un petit pb, a la fin
quand je clique sur terminer (le dernier bouton de confirmation) le formulaire n'est pas envoyé a la page suivante, (d'enregistrement des données), elle recharge la mm page
(et aussi quand il faut mettre onChange="Submit(); dans le select, quel est le reste du code, j'pense que seul ce bout de code ne suffit pas ^^)
merci
merci le code fonctionne ! ;)
mais y a un petit pb, a la fin
quand je clique sur terminer (le dernier bouton de confirmation) le formulaire n'est pas envoyé a la page suivante, (d'enregistrement des données), elle recharge la mm page
(et aussi quand il faut mettre onChange="Submit(); dans le select, quel est le reste du code, j'pense que seul ce bout de code ne suffit pas ^^)
merci