[php]recuperation des elements d'une liste multiple

recuperation des elements d'une liste multiple [php] - PHP - Programmation

Marsh Posté le 11-02-2005 à 14:57:06    

salut a tous,
 
voila, j'ai un probleme.
je voudrais recuperer les elements selectionnes dans une liste multiple.
j'ai donc 2 pages
 
1 ere :  
 
<html><body>
<form method="post" action="verif.php">  
 
<select name="liste" size=3 multiple>
<option value="Choix 1">Choix 1
<option value="Choix 2">Choix 2
<option value="Choix 3">Choix 3
</select>  
</form>
</body></html>
 
et la 2 eme verif.php :
<html><body>
<?php
$droit = $_POST['liste'];
?>
</body></html>
 
 
 
mais voila le probleme, dans la variable $droit je n'ai que le dernier element selectionne par l utilisateur alors que celui ci a en selectionne 2 ou 3.
 
Merci


Message édité par zapoutix le 11-02-2005 à 14:57:23
Reply

Marsh Posté le 11-02-2005 à 14:57:06   

Reply

Marsh Posté le 11-02-2005 à 15:18:16    

met des crochets au nom de ta variable et ca devrait passer...
 
[code]
<select name="liste[]" size="3" multiple="multiple">
 <option value="1">Choix 1</option>
 <option value="2">Choix 2</option>
 <option value="3">Choix 3</option>
 <option value="4">Choix 4</option>
 <option value="5">Choix 5</option>
</select>
[code]


Message édité par rompi le 11-02-2005 à 15:18:48
Reply

Marsh Posté le 11-02-2005 à 15:24:14    

rompi a écrit :

met des crochets au nom de ta variable et ca devrait passer...


hello lexpagien ;)
je connaissais pas ce tip, pratique ^^
 

Reply

Marsh Posté le 11-02-2005 à 15:30:54    

Déjà côté validation de la page html, c'est mieux de mettre multiple="true" que multiple tout court. Certe l'html est trés permissif, mais si t'es pas un tant soit peu rigoureux dans ta programmation tu finiras par avoir des bugs assez difficile à corriger vu que ton code ne sera pas super propre.
Bon, pour "$droit = $_POST['liste'];" normalement, il aurait du te répondre "array" si le navigateur avait envoyé plusieurs valeurs.
Essaye un "print_r($_POST);" comme ça tu véras exactement ce qu'elles valeurs sont renvoyé par le formulaire .

Reply

Marsh Posté le 11-02-2005 à 15:32:24    

omega2 a écrit :

Déjà côté validation de la page html, c'est mieux de mettre multiple="true" que multiple tout court. Certe l'html est trés permissif, mais si t'es pas un tant soit peu rigoureux dans ta programmation tu finiras par avoir des bugs assez difficile à corriger vu que ton code ne sera pas super propre.
Bon, pour "$droit = $_POST['liste'];" normalement, il aurait du te répondre "array" si le navigateur avait envoyé plusieurs valeurs.
Essaye un "print_r($_POST);" comme ça tu véras exactement ce qu'elles valeurs sont renvoyé par le formulaire .


Non, faut mettre :

multiple="multiple"

;)

Reply

Marsh Posté le 11-02-2005 à 15:41:36    

Ha, autant pour moi. Comme j'ai jamais utilisé cette option, j'ai pas retenu la bonne valeur. lol

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed