IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Liste deroulante


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 17
    Par défaut Liste deroulante
    Bonjour, j'ai une liste deroulante et je souhaite que lorsque j'ai effectué mon choix, celui ci reste visible au rechargement de la page. Jusque là, ca va.

    Mais lorsque je veux afficher une autre page contenant la liste deroulante, celle ci re affiche "une valeur par defaut".

    Voici le code pour ma liste deroulante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <form name="RechercheLangue" method="post" action="index.php">
    <?php //liste deroulante sur la langue ?>
     
    <select name="Langue"  onchange="javascript:this.form.submit();" >
     
    <?php
    function choixParDefaut($Langue) // Création de la fonction
    {
    $Langue_defaut = ''; // On crée une variable (vide par défaut) que l'on retournera à la fin
     
        if (isset($_POST['Langue'])) // Si le visiteur a choisi une langue
        {
            if ($_POST['Langue'] == $Langue) // Si cette langue correspond à la langue que l'on est en train de traiter
            {
                $Langue_defaut='selected="selected"'; // Alors on modifie la variable que l'on retournera et on lui met selected
            }
        }
     
    return $Langue_defaut; // On ne retourne rien si ce n'était pas la langue choisie, selected si c'était la bonne langue
    }
    ?>
    <!-- Remplissage liste deroulante -->
    <option value="Brezhoneg" <?php echo choixParDefaut('Brezhoneg');?>>Brezhoneg</option>
    <option value="Francais"  <?php echo choixParDefaut('Francais');?>>Francais</option>
     
    <?php
    echo '</select><br>';
     
     
    echo '</form></td></tr></table>';
    Une page standard inclut une page contenant la liste deroulante;une liste de liens;et le contenu.

    Comment faire pour garder la valeur de la liste quel que soit la page demandee?
    Merci pour votre aide

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Tu dois faire passer la valeur de ta liste par une variable.
    En gros, tu as 2 possibilités : GET ou SESSION.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 17
    Par défaut
    Tu peux expliquer un peu ta reponse?
    Parce que la je ne comprends pas l'intéret de proceder ainsi...

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Essayons de faire simple
    Tu veux qu'une liste garde sa valeur.
    Une valeur se stocke dans une variable.
    Pour passer une variable de page en page, sont on passe par GET (côté client) soit par SESSION côté serveur.
    C'est plus clair ?

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 17
    Par défaut
    Je n'ai peut etre pas été clair dans ma demande, ce n'est pas vraiment recuperer la valeur de la variable qui m'interesse, c'est juste au niveau de l'affichage que je souhaite que la valeur reste selectionnée.

  6. #6
    Membre Expert

    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 278
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 278
    Par défaut
    Et comment veux-tu que la valeur reste sélectionnée si tu ne la transmet pas ?
    Sinon, si c'est juste pour indiquer sur quelle page tu te trouves, mets cette valeur en variable au début de chaque script.
    Au passage, pour qu'une valeur soit sélectionnée par défaut, il faut indiquer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <option value="rrr" selected="selected">

Discussions similaires

  1. Parcourir une liste deroulante
    Par brandon dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 17/02/2005, 19h03
  2. plusieurs value dans une liste deroulante
    Par lepierre dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 16/11/2004, 14h53
  3. [JSP]Problème liste deroulante dynamique
    Par besco dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 09/09/2004, 17h58
  4. liste deroulante avec plusieurs champs
    Par JulienT dans le forum Struts 1
    Réponses: 4
    Dernier message: 20/04/2004, 17h17
  5. [langage] liste déroulante
    Par Jeh dans le forum Langage
    Réponses: 6
    Dernier message: 16/09/2003, 10h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo