Liste deroulante(valeur)

Signaler
Messages postés
4
Date d'inscription
dimanche 16 octobre 2005
Statut
Membre
Dernière intervention
17 février 2006
-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
bonjour

voila j'ai une liste deroulante mai quand je clique sur ok je refresh ma page mais j'aimerais que ma liste affiche la selection que j'ai choisie or elle est reinitialisé.

merci a tous

1 réponse

Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Hello,

bon j'ai la flemme de refaire un code alors je te montre celui que je viens juste de créer pour ujn autre post, et je te montre la ligne qui t'interesse (en rouge) :

<?php
$aTest = array (
1 => array (
'1-1',
'1-2'),
2 => array (
'2_1',
'2_2'),
3 => array (
'3-1',
'3-2')
);
?>
<form method="post">
<select name="test" onchange="this.form.submit ();">
<?php
foreach ($aTest as $clef => $val) {
echo '<option value="',$clef,'"',$selected= (isset ($_POST['test']) && $_POST['test'] == $clef)?'selected="selected"':'','>',$clef,'</option>';
}
?>
</select>
<?php
if (isset ($_POST['test'])) {
echo '<select name="test2">';
foreach ($aTest[$_POST['test']] as $val) {
echo '<option value="',$val,'">',$val,'</option>';
}
echo '</select>';
}
?>
</form>

Bref, tu testes si le formulaire a été soumis (donc le $-POST['nom_du_select'] existe), et si oui, tu testes si sa valeur est celle de l'option en cours. Si oui, tu fais afficher selected="selected". Sinon, tu n'affiches rien.