Détecter un changement dans une liste déroulante

Résolu
eddie5150 Messages postés 34 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 20 octobre 2008 - 2 juin 2006 à 10:24
eddie5150 Messages postés 34 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 20 octobre 2008 - 2 juin 2006 à 10:57
Bonjour, j'ai une question qui me turlupine, j'ai une liste déroulante qui poste le formulaire quand on sélectionne une valeur, ce que j'aimerai faire, c'est un test pour savoir si la valeur de cette liste a changé, car, si j'ai posté le formulaire avec un autre bouton, et que je fait isset($_POST['maliste']), cela renvoie true, meme si je n'ai pas touché à la liste.

Je sais pas si je suis très clair... j'espere que c'est assez compréhensible.

4 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
2 juin 2006 à 10:35
Hello,

heu...tu peux faire ça avec un onchange et un input hidden.
je m'"explique :
tu mets un input type="hidden" avec 0 pour valeur.
Sur le onchange de ton select, tu modifies cette valeur à 1.

résultat, si on a touché le select avant de soumettre, le champ caché ets à 1, sinon, il est à 0.
sur le onchange de ton select,
1
ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
2 juin 2006 à 10:53
Salut,
20/20 Malalam ;-)
Voilà le code HTML:

<select id="ma_liste" name="ma_liste" onchange="document.getElementById('changed').value=1;">
<option value="option 1">option 1</option>
<option value="option 2">option 2</option>
<option value="option 3">option 3</option>
<option value="option 4">option 4</option>
</select>

Et le code PHP:
<?php
if($_POST['changed']){
    // Mon select à été changé
}
?>

@+

Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi. 
<!--StartFragment -->Grâce à Immortal-PC votre ordinateur passera les âges.
1
eddie5150 Messages postés 34 Date d'inscription samedi 19 novembre 2005 Statut Membre Dernière intervention 20 octobre 2008 1
2 juin 2006 à 10:57
Merci de vos réponses, j'ai adopté la méthode de malalam, ca marche parfaitement !
1
pastis51forever Messages postés 172 Date d'inscription dimanche 29 juin 2003 Statut Membre Dernière intervention 8 septembre 2006 1
2 juin 2006 à 10:50
Bonjour!
Sinon, en valeur par défaut dans ta liste tu mets
<option value="rien" selected>Choisissez dans la liste</option>
et ton test devient
if (isset($_POST['maliste']) AND $_POST['maliste'] != "rien" )

Brice
0
Rejoignez-nous