Récupérer valeur d'une session d'un select [Résolu]

Messages postés
37
Date d'inscription
samedi 16 septembre 2006
Statut
Membre
Dernière intervention
5 juillet 2012
- - Dernière réponse : cs_harmonyk
Messages postés
37
Date d'inscription
samedi 16 septembre 2006
Statut
Membre
Dernière intervention
5 juillet 2012
- 26 avril 2010 à 22:28
Bonjour !

J'ai un formulaire qui contient un select avec des options.
Si l'utilisateur se trompe, j'aimerais qu'à son retour sur le formulaire le select précédemment choisi soit déjà choisi.
Ca fonctionne très bien avec des varaibles normales, mais pas avec un tableau.
Je précise tout de même que ma variable de session n'est pas vide.
Un code valant mieux que des explications :
<?php
$etudes = array('Sans qualification', 'Bep/Cap', 'Bac/Bac Pro', 'Bac+2', 'Licence', 'Master', 'Doctorat');
$valeurs = array('sq','bc','bb','b2','li','ma','do');
for ($i=0; $i < sizeof($valeurs); $i ++)
{
        if (isset($_SESSION['etudes']) AND $_SESSION['etudes'] == $valeurs[$i])
                echo "<option value='$valeurs[$i]' selected='selected'>$etudes[$i]</option>";
                
        else                                
                echo "<option value='$valeurs[$i]'>$etudes[$i]</option>";                           
}
?>

Le truc qui me chiffonne vraiment, c'est que $_SESSION['etudes'] est bien égal à $valeurs[$i] à un moment, alors qu'apparemment la condition est refusée...
Une idée du pourquoi ?
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
20
3
Merci
Salut,

c'est que $_SESSION['etudes'] est bien égal à $valeurs[$i] à un moment

... ce moment est il le bon ?

Une façon simple d'y voir un peu plus clair serait de remplacer la ligne qui suit le else par :


echo "<option value='$valeurs[$i]'>$etudes[$i]." session = ".$_SESSION['etudes']."</option>";

.... la valeur affichée est elle correcte ?


Cordialement,


Kohntark -

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 159 internautes nous ont dit merci ce mois-ci

Commenter la réponse de kohntark
Messages postés
37
Date d'inscription
samedi 16 septembre 2006
Statut
Membre
Dernière intervention
5 juillet 2012
0
Merci
Merci kohntark pour ton aide !!
La valeur affichée est effectivement correcte...mais...
En mettant ta ligne en dessous de l'ancienne je me suis aperçu que j(avais un tout petit espace juste après le $valeurs[$i]:
echo "<option value='$valeurs[$i]_'>$etudes[$i]</option>";
Si ca c'est pas une erreur de débutant....Honte à moi !
Merci encore pour ton aide =)
Sujet résolu, je ne peux pas éditer le 1er message ?
Commenter la réponse de cs_harmonyk
Messages postés
3708
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
20
0
Merci
Je sentais bien un truc dans le genre
Content de t'avoir mis sur la voie.
Il n'y a aucune honte à faire ce genre d'erreur, ça arrive régulièrement, même aux plus "balèzes", le tout est de la détecter rapidement. Pour cela rien de tel qu'un rapide "echo ...", print_r(), var_dump(), debug_backtrace(), ...

je ne peux pas éditer le 1er message ?

Non, pas sur ce site.

Bonne continuation,


Kohntark -
Commenter la réponse de kohntark
Messages postés
37
Date d'inscription
samedi 16 septembre 2006
Statut
Membre
Dernière intervention
5 juillet 2012
0
Merci
Je ne jure que par le print_r()
Pour palier à ce genre de soucis, je viens de changer la police (ainsi que sa taille) de mon EDI, j'avoue que là au moins je les vois les espaces ^^

Ps: j'avais pas vu le GROS bouton "réponse acceptée"
Commenter la réponse de cs_harmonyk