Liste déroulante : récuperer la valeur et non l'index

Mammouth du PHP | 1353 Messages

28 juin 2005, 10:36

Bonjour,

Est il possible de récupérer la valeur d'une liste déroulante après un POST ?
En fait ma liste déroulante est construite en fonction d'autres paramètres donc l'index que je récupère en $_POST n'est pas le plus facil à traiter...

Y a t il la possiblité de récupérer la valeur sélectionnée ? En revanche il s'agit d'un int que je voudrai récupérer donc je ne peux pas me contenter du nom, sauf si un cast est possible....

Merci

Mammouth du PHP | 19672 Messages

28 juin 2005, 10:37

Refais-nous la même clairement avec un exemple si possible, j'ai pas compris grand chose :-k
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Mammouth du PHP | 1353 Messages

28 juin 2005, 10:40

Ok désolé je prend un exemple :

Imaginons la liste suivante :

0.25 0.5 0.75 1

Si l'utilisateur selectionne 0.5 puis valide, dans la page suivante le $_POST va me donner comme valeur 1 (car cela correspond à la valeur 1 de la liste).

Je voudrai que le $_POST me donne directement la valeur 0.5.

J espere etre plus clair...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

28 juin 2005, 10:43

Donne nous le code de ta liste

Mais normalement, tu peut faire
<option name=".." value="<?= $val ?>><?=$val?></option>
et ce que tu va récupérer sera la valeur affichée
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 91 Messages

28 juin 2005, 10:44

il faut construire ta selection de la maniere suivant :
<select name="le_nom">
<option value="0.5">0.5</option>
<option value="0.75">0.75</option>
<option value="1">1</option>
</select>
YaTTa :D

Mammouth du PHP | 1353 Messages

28 juin 2005, 11:03

Voila ma liste :
while($i>=nb_jour_min&&$i<=$nb_jour_dispo)
{
$listdays .= "<OPTION VALUE=\"". $i ."\">". $i ."</OPTION>"; 
$i=$i+0.25;
}
$listdays .= "</SELECT>"; 
Avec cette méthode quand dans la page suivante je fais
$days=$_POST["days"];
je récupère l'index.

Eléphant du PHP | 91 Messages

28 juin 2005, 11:04

et le probleme se situe où alors ?
YaTTa :D

Mammouth du PHP | 1353 Messages

28 juin 2005, 11:08

bah la par exemple admettons que ca aille de 0.25 à 1 avec un pase de 0.25 si la personne selection 0.5 je récupère l'index, c'est à dire 1 alors que je voudrais récupérer la valeur 0.5.

Eléphant du PHP | 91 Messages

28 juin 2005, 11:16

je vois pas pourquoi tu récupères 1 !, si la value est de 0.25 par exemple alors la variable prendra 0.25 et pas 1
YaTTa :D

Mammouth du PHP | 1353 Messages

28 juin 2005, 11:17

oui en fait j'ai testé séparemment c'est vrai je récupère la bonne valeur c'est durant le stockage dans la base que ca déconne mais bon c'est pas le même probleme.

Merci