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   -
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.
A voir également:

8 réponses

colas31 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   21
 
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
0
j'en ai marre de ne rien trouver en cherchant
 
Bonjour colas31,merci beaucoup pour ton aide car ton code marche.
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>
0
Utilisateur anonyme
 
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>
0
j'en ai marre de ne rien trouver en cherchant
 
merci à toi mais j'avais précisé que c'est avec sans alert();
merci quand méme pour ton aide
0
j'en ai marre de ne rien trouver en cherchant
 
je vais essayer
0
colas31 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   21
 
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
0
j'en ai marre de ne rien trouver en cherchant
 
merci encore à toi, je suis persuadé que t'es ingénieur en info
0
j'en ai marre de ne rien trouver en cherchant
 
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>
0
colas31 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   21
 
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 ;)
0
j'en ai marre de ne rien trouver en cherchant
 
Bein tant mieux car t'es vraiment très calé en infos.
J'espère que t'a remarqué dans mon précédent message,car je n'ai toujours pas résolu le pb
0
j'en ai marre de ne rien trouver en cherchant
 
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>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
JuB0 Messages postés 654 Date d'inscription   Statut Membre Dernière intervention   81
 
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 ?)
0
colas31 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   21
 
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>
0
colas31 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   21
 
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>
0
colas31 Messages postés 135 Date d'inscription   Statut Membre Dernière intervention   21
 
<?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>
0