PHP:problème de liste déroulante
Résolu
j'en ai marre de ne rien trouver en cherchant
-
colas31 Messages postés 135 Date d'inscription Statut Membre Dernière intervention -
colas31 Messages postés 135 Date d'inscription Statut Membre Dernière intervention -
Bonjour,je suis en galère,ça fait des heures que je cherche...sans rien trouver.
Je commence à désespérer.
Mon problème est un cas d'école: moi, ce que je n'arrive pas à faire c'est d'afficher un message en fonction de ce que j'ai sélectionner dans une liste déroulante, et ce sans passer par le bouton submit, et je veux que ce message s'affiche en dessous de la liste déroulante, et pas dans une petite fenêtre du style window.alert().
Svp,aider-moi,j'en peux plus.
Voici mon code(ici, ce que je n'arrive pas à faire,c'est que dès que vous avez sélectionné un département, et bein il ya un message qui vous informe quel département vous avez sélectionné) :
<html>
<body>
<?php
echo"
<form>
<select name='département'>
<option value=1>Paris</option>
<option value=2>Seine-et-Marne</option>
<option value=3 selected>Poissy</option>
</select>
</form>";
if(form.département.value==1)
{echo"vous avez sélectionné Paris";}
elseif(form.département.value==2)
{echo"vous avez sélectionnér Seine-et-Marne";}
elseif(form.département.value==3)
{echo"vous avez sélectionnér Poissy";}
?>
</body>
</html>
Merci d'avance à tous.
Je commence à désespérer.
Mon problème est un cas d'école: moi, ce que je n'arrive pas à faire c'est d'afficher un message en fonction de ce que j'ai sélectionner dans une liste déroulante, et ce sans passer par le bouton submit, et je veux que ce message s'affiche en dessous de la liste déroulante, et pas dans une petite fenêtre du style window.alert().
Svp,aider-moi,j'en peux plus.
Voici mon code(ici, ce que je n'arrive pas à faire,c'est que dès que vous avez sélectionné un département, et bein il ya un message qui vous informe quel département vous avez sélectionné) :
<html>
<body>
<?php
echo"
<form>
<select name='département'>
<option value=1>Paris</option>
<option value=2>Seine-et-Marne</option>
<option value=3 selected>Poissy</option>
</select>
</form>";
if(form.département.value==1)
{echo"vous avez sélectionné Paris";}
elseif(form.département.value==2)
{echo"vous avez sélectionnér Seine-et-Marne";}
elseif(form.département.value==3)
{echo"vous avez sélectionnér Poissy";}
?>
</body>
</html>
Merci d'avance à tous.
A voir également:
- PHP:problème de liste déroulante
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
8 réponses
bonjour,
Tu est sur de ton code "form.département.value" c'est plutot du javascript ca ? non
essaye ceci
<form method="get" >
<select name='département' value="$departement" onChange="this.form.submit();">
.....
en premierere ligne de ton code :
<?php
@$département=$_GET['département];
?>
et apres tu test a quoi est egal ta varible
if($département==1)
....
VOila
Tu est sur de ton code "form.département.value" c'est plutot du javascript ca ? non
essaye ceci
<form method="get" >
<select name='département' value="$departement" onChange="this.form.submit();">
.....
en premierere ligne de ton code :
<?php
@$département=$_GET['département];
?>
et apres tu test a quoi est egal ta varible
if($département==1)
....
VOila
Bonjour,
voilà quelque chose qui affiche 1 2 ou 3 (la valeur du champ sélectionné)en focntion du choix
<html>
<script language='javascript'>
function alerte() {
alert(document.formulaire.département.value);
}
</script>
<body>
<?php
echo"
<form name='formulaire'>
<select name='département' onchange='alerte();'>
<option value=1 >Paris</option>
<option value=2 >Seine-et-Marne</option>
<option value=3 selected >Poissy</option>
</select>
</form>";
?>
</body>
</html>
voilà quelque chose qui affiche 1 2 ou 3 (la valeur du champ sélectionné)en focntion du choix
<html>
<script language='javascript'>
function alerte() {
alert(document.formulaire.département.value);
}
</script>
<body>
<?php
echo"
<form name='formulaire'>
<select name='département' onchange='alerte();'>
<option value=1 >Paris</option>
<option value=2 >Seine-et-Marne</option>
<option value=3 selected >Poissy</option>
</select>
</form>";
?>
</body>
</html>
alors en fait il faudrait que tu fasse ceci :
tu creer un tableau avec la liste des variable que tu veux dans ta liste déroulante :
<?php
@$département=$_GET[département];
if($département== NULL)
{
$département= "Paris";
}
?>
$ville = array("Paris","Seine-et-Marne","Poissy");
echo"
<form method=get>
<select name=département value='$departement' onChange=this.form.submit();>
for($j=0; $j<=2; $j++ )
{
if ($ville[$j] == $département)
{
echo '<option selected value="'.$département.'">'.$département.'</option>';
}
else
{
echo '<option value="'.$ville[$j].'">'.$ville[$j].'</option>';
}
}
</select>
</form>";
if($département==1)
{echo"vous avez sélectionné Paris";}
elseif($département==2)
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($département==3)
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
VOila normalement ceci devrait corriger ton probleme
tu creer un tableau avec la liste des variable que tu veux dans ta liste déroulante :
<?php
@$département=$_GET[département];
if($département== NULL)
{
$département= "Paris";
}
?>
$ville = array("Paris","Seine-et-Marne","Poissy");
echo"
<form method=get>
<select name=département value='$departement' onChange=this.form.submit();>
for($j=0; $j<=2; $j++ )
{
if ($ville[$j] == $département)
{
echo '<option selected value="'.$département.'">'.$département.'</option>';
}
else
{
echo '<option value="'.$ville[$j].'">'.$ville[$j].'</option>';
}
}
</select>
</form>";
if($département==1)
{echo"vous avez sélectionné Paris";}
elseif($département==2)
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($département==3)
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
VOila normalement ceci devrait corriger ton probleme
Bonjour colas31, lorsque je reécris ton code, voilà ce qui est affiché:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in C:\wamp\www\1.php on line 17, alors que je ne sait pas ou se trouve l'erreur,(tu peux le constater en faisant copier-coller le script ci dessous):
<?php
@$département=$_GET['département'];
if($département== NULL)
{
$département='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=département value=$departement onChange=this.form.submit();>
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $département)
{echo"<option selected value=$département>$département</option>";}
else
{echo"<option value=$ville[$j]>$ville[$j]</option>"; }
}
</select>
</form>";
if($département==1)
{echo"vous avez sélectionné Paris";}
elseif($département==2)
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($département==3)
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in C:\wamp\www\1.php on line 17, alors que je ne sait pas ou se trouve l'erreur,(tu peux le constater en faisant copier-coller le script ci dessous):
<?php
@$département=$_GET['département'];
if($département== NULL)
{
$département='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=département value=$departement onChange=this.form.submit();>
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $département)
{echo"<option selected value=$département>$département</option>";}
else
{echo"<option value=$ville[$j]>$ville[$j]</option>"; }
}
</select>
</form>";
if($département==1)
{echo"vous avez sélectionné Paris";}
elseif($département==2)
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($département==3)
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
Ha pas de quoi :p
et non non pas ingénieur je suis en formation de DUT c'est tt ^^ Mais je veux le devenir ;)
et non non pas ingénieur je suis en formation de DUT c'est tt ^^ Mais je veux le devenir ;)
Bein tant mieux car t'est vraiment calé en info.
Dans ton code que tu m'as donné,il y a un petit problème: lorsque je reécris ton code, voilà ce qui est affiché:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in C:\wamp\www\1.php on line 17, alors que je ne sait pas ou se trouve l'erreur,(tu peux le constater en faisant copier-coller le script ci dessous):
<?php
@$département=$_GET['département'];
if($département== NULL)
{
$département='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=département value=$departement onChange=this.form.submit();>
for($j=0; $j<=2; $j++ )
{if ($ville[$j] == $département)
{echo"<option selected value=$département>$département</option>";}
else
{echo"<option value=$ville[$j]>$ville[$j]</option>"; }
}
</select>
</form>";
if($département==1)
{echo"vous avez sélectionné Paris";}
elseif($département==2)
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($département==3)
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
Dans ton code que tu m'as donné,il y a un petit problème: lorsque je reécris ton code, voilà ce qui est affiché:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in C:\wamp\www\1.php on line 17, alors que je ne sait pas ou se trouve l'erreur,(tu peux le constater en faisant copier-coller le script ci dessous):
<?php
@$département=$_GET['département'];
if($département== NULL)
{
$département='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=département value=$departement onChange=this.form.submit();>
for($j=0; $j<=2; $j++ )
{if ($ville[$j] == $département)
{echo"<option selected value=$département>$département</option>";}
else
{echo"<option value=$ville[$j]>$ville[$j]</option>"; }
}
</select>
</form>";
if($département==1)
{echo"vous avez sélectionné Paris";}
elseif($département==2)
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($département==3)
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
1. pas d'accent dans les noms de variables
2.
echo"
<form method=get>
<select name=département value=$departement onChange=this.form.submit();>
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $département)
{echo"<option selected value=$département>$département</option>";}
else
{echo"<option value=$ville[$j]>$ville[$j]</option>"; }
}
</select>
</form>";
C'est quoi ? (ou plutot tu veux faire quoi ?)
1. pas d'accent dans les noms de variables
2.
echo"
<form method=get>
<select name=département value=$departement onChange=this.form.submit();>
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $département)
{echo"<option selected value=$département>$département</option>";}
else
{echo"<option value=$ville[$j]>$ville[$j]</option>"; }
}
</select>
</form>";
C'est quoi ? (ou plutot tu veux faire quoi ?)
voila le script modifier il y avait un probleme d'accent et de condition ;)
<?php
@$departement=$_GET['departement'];
if($departement== NULL)
{
$departement='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=departement value=$departement onChange=this.form.submit();> ";
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $departement)
{
echo'<option selected value='.$departement.'>'.$departement.'</option>';
}
else
{
echo'<option value='.$ville[$j].'>'.$ville[$j].'</option>';
}
}
echo"
</select>
</form>";
if($departement=="Paris")
{echo"vous avez sélectionné Paris";}
elseif($departement=="Seine-et-Marne")
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($departement=="Poissy")
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
<?php
@$departement=$_GET['departement'];
if($departement== NULL)
{
$departement='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=departement value=$departement onChange=this.form.submit();> ";
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $departement)
{
echo'<option selected value='.$departement.'>'.$departement.'</option>';
}
else
{
echo'<option value='.$ville[$j].'>'.$ville[$j].'</option>';
}
}
echo"
</select>
</form>";
if($departement=="Paris")
{echo"vous avez sélectionné Paris";}
elseif($departement=="Seine-et-Marne")
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($departement=="Poissy")
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
revoila le code
<?php
@$departement=$_GET['departement'];
if($departement== NULL)
{
$departement='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=departement value=$departement onChange=this.form.submit();> ";
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $departement)
{
echo'<option selected value='.$departement.'>'.$departement.'</option>';
}
else
{
echo'<option value='.$ville[$j].'>'.$ville[$j].'</option>';
}
}
echo"
</select>
</form>";
if($departement=="Paris")
{echo"vous avez sélectionné Paris";}
elseif($departement=="Seine-et-Marne")
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($departement=="Poissy")
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
<?php
@$departement=$_GET['departement'];
if($departement== NULL)
{
$departement='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=departement value=$departement onChange=this.form.submit();> ";
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $departement)
{
echo'<option selected value='.$departement.'>'.$departement.'</option>';
}
else
{
echo'<option value='.$ville[$j].'>'.$ville[$j].'</option>';
}
}
echo"
</select>
</form>";
if($departement=="Paris")
{echo"vous avez sélectionné Paris";}
elseif($departement=="Seine-et-Marne")
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($departement=="Poissy")
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
<?php
@$departement=$_GET['departement'];
if($departement== NULL)
{
$departement='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=departement value=$departement onChange=this.form.submit();> ";
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $departement)
{
echo'<option selected value='.$departement.'>'.$departement.'</option>';
}
else
{
echo'<option value='.$ville[$j].'>'.$ville[$j].'</option>';
}
}
echo"
</select>
</form>";
if($departement=="Paris")
{echo"vous avez sélectionné Paris";}
elseif($departement=="Seine-et-Marne")
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($departement=="Poissy")
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
@$departement=$_GET['departement'];
if($departement== NULL)
{
$departement='Paris';
}
?>
<?php
$ville = array('Paris','Seine-et-Marne','Poissy');
echo"
<form method=get>
<select name=departement value=$departement onChange=this.form.submit();> ";
for($j=0; $j<=2; $j++ )
{ if ($ville[$j] == $departement)
{
echo'<option selected value='.$departement.'>'.$departement.'</option>';
}
else
{
echo'<option value='.$ville[$j].'>'.$ville[$j].'</option>';
}
}
echo"
</select>
</form>";
if($departement=="Paris")
{echo"vous avez sélectionné Paris";}
elseif($departement=="Seine-et-Marne")
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($departement=="Poissy")
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>
Mais en fait,il marche à moitié (tu peux peut copier-coller avec le script ci-dessous, et l'essayer pour le constater):
D'abord, lorsque je sélectionne un département par exemple, et bein ça affiche bien en "echo" le département sélectionné, sauf que la liste déroulante revient sur le choix initial.
Deuxièment lorsque je sélectionne le 1er choix de la liste, ici Paris, et bein ça n'affiche rien en echo pour Paris.
Donc comment je peux régler ce défaut.
Voici le code(1.php):
<?php
@$département=$_GET[département];
?>
<html>
<body>
<?php
echo"
<form method=get>
<select name=département value='$departement' onChange=this.form.submit();>
<option value=1>Paris</option>
<option value=2>Seine-et-Marne</option>
<option value=3>Poissy</option>
</select>
</form>";
if($département==1)
{echo"vous avez sélectionné Paris";}
elseif($département==2)
{echo"vous avez sélectionné Seine-et-Marne";}
elseif($département==3)
{echo"vous avez sélectionné Poissy";}
?>
</body>
</html>