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 :

modifier la valeur d'une liste déroulante à travers PHP


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de souminet
    Inscrit en
    Novembre 2006
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 351
    Par défaut modifier la valeur d'une liste déroulante à travers PHP
    Bonjour à tous,

    Voilà, j'utilise un petit formulaire (Liste déroulante + Bouton Submit) pour réaliser un filtre sur une Table.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
      <form id="form2" name="form2" method="post" action="gdi_admin.php">
            Veuillez choisir  une catégorie d'intervention :
              <select name="filtre" id="filtre">
                <option value="support">Support(Maintenance)</option>
                <option value="réseau">Réseau</option>
                <option value="dba">DBA (Bases de données)</option>
                <option value="tout" selected="selected">Tout</option>
              </select>
              <input type="submit" name="filtreBtn" id="filtreBtn" value="Filtrer" />
          </form>
    Le script gdi_admin.php exécute une requête de sélection , et affiche les résulats dans la même page.

    Jusque là tout va bien, sauf que lorsque je valide le formulaire , les données s'affichent mais la valeur de la liste déroulante ne reprend pas la valeur sélectionné mais celle mise par défaut ; alors que je voudrais qu'elle affiche la valeur choisie par l'utilisateur au moment de valider le formulaire de filtrage.

    La solution serait de modifier à travers mon code php la valeur , en utilisant une variable par exemple.

    Merci de m'aider ...

  2. #2
    Membre confirmé Avatar de speedy_g
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 213
    Par défaut
    Un truc du genre à la place du select devrait marcher.

    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
     
    <?php
     
    $test = isset($_POST['filtre'])?$_POST['filtre']:"tout";
     
    $values = array("support"=>"Support(Maintenance)",
                          "réseau"=>"Réseau",
                           "dba"=>"DBA (Bases de données)",
                            "tout"=>"Tout");
     
    $select = "<select name="filtre" id="filtre">";
    foreach($values as $key =>$value)
    {
       if($key == $test)
      {
       $select .= "<option selected="selected" value ="$key">$value</option>";
       }
       else
     { 
        $select .= "<option value ="$key">$value</option>";
      }
    }
    $select .="</select";
    echo $select;
    ?>

  3. #3
    Membre éclairé Avatar de souminet
    Inscrit en
    Novembre 2006
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 351
    Par défaut
    ça ne marche pas, il m'affiche une erreur.

  4. #4
    Membre confirmé Avatar de speedy_g
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 213
    Par défaut
    J'avais fait ca sans tester, comme ca, cela devrait être bon


    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
     
    <?php
     
    $test = isset($_POST['filtre'])?$_POST['filtre']:"tout";
     
    $values = array("support"=>"Support(Maintenance)",
                          "réseau"=>"Réseau",
                           "dba"=>"DBA (Bases de données)",
                            "tout"=>"Tout");
     
    $select = "<select name='filtre' id='filtre'>";
    foreach($values as $key =>$value)
    {
       if($key == $test)
      {
       $select .= "<option selected='selected' value ='$key'>$value</option>";
       }
       else
     { 
        $select .= "<option value ='$key'>$value</option>";
      }
    }
    $select .="</select";
    echo $select;
    ?>

  5. #5
    Membre éclairé Avatar de souminet
    Inscrit en
    Novembre 2006
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 351
    Par défaut
    J'ai essayé de placer le code proposé, mais maintenant le bouton submit n'apparait plus , voilà comment je l'ai placé:
    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
          <form id="form2" name="form2" method="post" action="gdi_admin.php">
            Veuillez choisir  une catégorie d'intervention :
            <?php $test = isset($_POST['filtre'])?$_POST['filtre']:"tout";
     
    $values = array("support"=>"Support(Maintenance)",
                          "réseau"=>"Réseau",
                           "dba"=>"DBA (Bases de données)",
                            "tout"=>"Tout");
     
    $select = "<select name='filtre' id='filtre'>";
    foreach($values as $key =>$value)
    {
       if($key == $test)
      {
       $select .= "<option selected='selected' value ='$key'>$value</option>";
       }
       else
     { 
        $select .= "<option value ='$key'>$value</option>";
      }
    }
    $select .="</select";
    echo $select;
    ?>
              <input type="submit" name="filtreBtn" id="filtreBtn" value="Filtrer" />
          </form>

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonsoir ,
    je supposes que tu voulais écrire comme cela !
    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
     
    <html><body>
    <?php
    echo (" <form id='form2' name='form2' method='POST' action='gdi_admin.php'>");
    $test = isset($_POST['filtre'])?$_POST['filtre']:"tout";
     
    $values = array("support"=>"Support(Maintenance)",
                          "réseau"=>"Réseau",
                           "dba"=>"DBA (Bases de données)",
                            "tout"=>"Tout");
     
    $select = "<select name='filtre' id='filtre'>";
    foreach($values as $key =>$value)
    {
       if($key == $test)
      {
       $select .= "<option selected='selected' value ='$key'>$value</option>";
       }
       else
      { 
        $select .= "<option value ='$key'>$value</option>";
       }
    }
    $select .="</select>";
    echo $select;
    ?>
    <input type="submit" name="filtreBtn" id="filtreBtn" value="Filtrer" />
    </form></body></html>

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 29/04/2014, 15h17
  2. Choisir la valeur d'une liste déroulante avec php
    Par skflers61 dans le forum Langage
    Réponses: 6
    Dernier message: 16/04/2014, 15h42
  3. [AC-2010] Modifier une valeur grâce à une liste déroulante
    Par WinomS dans le forum Access
    Réponses: 1
    Dernier message: 16/02/2012, 20h14
  4. Réponses: 4
    Dernier message: 20/12/2007, 10h40
  5. valeur d'une liste déroulante
    Par leeloo076 dans le forum ASP
    Réponses: 7
    Dernier message: 15/04/2004, 16h11

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