Garder la valeur d'une liste déroulante après validation
Résolu
Bryant
-
Bryant -
Bryant -
Bonjour,
Voila, je suis en train de développer un formulaire et je rencontre un petit soucis sur une liste déroulante.
Alors en fait mon soucis est que lorsque je sélectionne un choix dans ma liste déroulante, je voudrais que le choix sélectionné reste sélectionné une fois que je valide le formulaire même si d'autres champs du formulaire ne sont pas bons !
En fait, je veux éviter de reprendre mon formulaire à zéro à chaque fois que j'ai une erreur dans mon formulaire.
Concernant les champs textes, je n'ai pas de soucis par contre pour ma liste déroulante, je n'arrive pas à garder le choix sélectionné.
Voici le code que j'ai mis dans ma liste déroulante :
Si quelqu'un pouvais m'aider, cela serait avec plaisir !
D'avance merci
Voila, je suis en train de développer un formulaire et je rencontre un petit soucis sur une liste déroulante.
Alors en fait mon soucis est que lorsque je sélectionne un choix dans ma liste déroulante, je voudrais que le choix sélectionné reste sélectionné une fois que je valide le formulaire même si d'autres champs du formulaire ne sont pas bons !
En fait, je veux éviter de reprendre mon formulaire à zéro à chaque fois que j'ai une erreur dans mon formulaire.
Concernant les champs textes, je n'ai pas de soucis par contre pour ma liste déroulante, je n'arrive pas à garder le choix sélectionné.
Voici le code que j'ai mis dans ma liste déroulante :
<label for="Statut" class="float">Statut : </label> <select name="Statut"> <option name="Statut" value="Administrateur" <?php echo (isset($_SESSION['statut_info']) && $_SESSION['form_statut'] == "Administrateur")? 'selected="selected"' : ''; ?> >Administrateur</option> <option name="Statut" value="Membre" <?php echo (isset($_SESSION['statut_info']) && $_SESSION['form_statut'] == "Membre")? 'selected="selected"' : ''; ?> >Membre</option> </select><br />
Si quelqu'un pouvais m'aider, cela serait avec plaisir !
D'avance merci
A voir également:
- Garder la valeur d'une liste déroulante après validation
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Liste déroulante google sheet - Accueil - Guide bureautique
- Supprimer liste déroulante excel ✓ - Forum Excel
- Liste code ascii - Guide
3 réponses
salut et ce code que tu as ne marche pas? alors enelve les doubles quotes que tu as mis a selected="selected" , mets plutot "selected = selected"
Salut Bryant,
Comment va ? :)
Essayez ça pour voir:
Cordialement.
Comment va ? :)
Essayez ça pour voir:
<label for="Statut" class="float">Statut : </label>
<select name="Statut">
<option name="Statut" value="Administrateur" <?php echo (isset($_SESSION['statut_info']) && $_SESSION['form_statut'] == "Administrateur")? 'selected' : ''; ?> >Administrateur</option>
<option name="Statut" value="Membre" <?php echo (isset($_SESSION['statut_info']) && $_SESSION['form_statut'] == "Membre")? 'selected' : ''; ?> >Membre</option>
</select><br />
Cordialement.
Tu vérifi une variable mais pas l'autre c'est bizarre, essaie :
ou
<label for="Statut" class="float">Statut : </label> <select name="Statut"> <option name="Statut" value="Administrateur" <?php echo (isset($_SESSION['form_statut']) && $_SESSION['form_statut'] == "Administrateur") ? 'selected' : ''; ?> >Administrateur</option> <option name="Statut" value="Membre" <?php echo (isset($_SESSION['form_statut']) && $_SESSION['form_statut'] == "Membre") ? 'selected' : ''; ?> >Membre</option> </select><br />
ou
<label for="Statut" class="float">Statut : </label> <select name="Statut"> <option name="Statut" value="Administrateur" <?php echo (isset($_SESSION['statut_info']) && $_SESSION['statut_info'] == "Administrateur")? 'selected="selected"' : ''; ?> >Administrateur</option> <option name="Statut" value="Membre" <?php echo (isset($_SESSION['statut_info']) && $_SESSION['statut_info'] == "Membre")? 'selected="selected"' : ''; ?> >Membre</option> </select><br />
Ben voilà ;) donc tu perd du teps à essayé de comprend pourquoi ton code de selection fonctionne pas alors qu'il marche très bien... Le problème viens du fait que la variable est pas défini.
Je t'avais dit hier je crois de ne pas utilisé les sessions pour controller un formulaire car ça joue sur les performance de ton script et SURTOUT les sessions pose problème avec la sécurité donc ont les utilise pas quand c'est pour gérer des données perso.
quand ont fait un formulaire ont édite déjà un tableau du genre :
Puis quand tu vérifi le $_POST tu peut faire un truc du genre :
ici en quelques lignes 1 : tu détermine tes valeurs et en 2 : si le formulaire est posté tu met à jour les valeur.
et de 3 tu as pas 36 nom de variable et au final tu t'y retrouve plus facilement car tu aura que UNE variable nommé $form pour ton formulaire.
J'ai déjà travaillé avec des formulaire extrêmement long est multiple donc tu dois apprendre à faire simple
Je t'avais dit hier je crois de ne pas utilisé les sessions pour controller un formulaire car ça joue sur les performance de ton script et SURTOUT les sessions pose problème avec la sécurité donc ont les utilise pas quand c'est pour gérer des données perso.
quand ont fait un formulaire ont édite déjà un tableau du genre :
$form = array( 'pseudo' =>, 'mdp' =>, 'nom' =>, 'prenom' => );
Puis quand tu vérifi le $_POST tu peut faire un truc du genre :
$form = array( 'pseudo' => (isset($_POST['pseudo'])) ? $_POST['pseudo'] : '', 'mdp' =>(isset($_POST['mdp'])) ? $_POST['mdp'] : '', 'nom' =>(isset($_POST['nom'])) ? $_POST['nom'] : '', 'prenom' =>(isset($_POST['prenom'])) ? $_POST['prenom'] : '', );
ici en quelques lignes 1 : tu détermine tes valeurs et en 2 : si le formulaire est posté tu met à jour les valeur.
et de 3 tu as pas 36 nom de variable et au final tu t'y retrouve plus facilement car tu aura que UNE variable nommé $form pour ton formulaire.
J'ai déjà travaillé avec des formulaire extrêmement long est multiple donc tu dois apprendre à faire simple
Si j'enlève les cotes j'ai cette erreur :
Parse error: syntax error, unexpected '='
Merci
Remplacer : "selected = selected"
Par : "selected = 'selected'"