Partage
  • Partager sur Facebook
  • Partager sur Twitter

Selection d'un choix dans une liste déroulante

en fonction d'une variable...

Sujet résolu
    26 novembre 2005 à 16:40:31

    SAlut'

    Voila je viens vous demander un petit renseignement, j'espere que vous pourez y répondre :)

    Alor voila en fait je voudrais pouvoir afficher l'option d'une liste déroulante via une varible php. Je veux dire par là que par exemple quand on veut éditer un script et que dans le formulaire il y a une liste déroulante que la valeur par default soi selectionner grace a la valeur se trouvant dans le base de donnée.

    Aprés avoir réfléchi je ne vois pas d'autre solution que de faire ainsi :


    if ($admin == '3')
    {
    ?>
    <option value="3">Membre</option>
    <option value="2">Modérateur</option>
    <option value="1">Administrateur</option>
    <?
    }
    if ($admin == '2')
    {
    ?>
    <option value="2">Modérateur</option>
    <option value="3">Membre</option>
    <option value="1">Administrateur</option>
    <?
    }
    if ($admin == '1')
    {
    ?>
    <option value="1">Administrateur</option>
    <option value="2">Modérateur</option>
    <option value="3">Membre</option>
    <?
    }


    Mais je me dit qu'il doit y avoir forcement plus simple car cette méthode me parait trop longue et peu performante par rapporta al puissance du php ^^

    Pouriez vous m'aiclairer ? Merci d'avance

    ++
    • Partager sur Facebook
    • Partager sur Twitter
      26 novembre 2005 à 16:45:53

      Personnellement j'ai du mal avec ca aussi moi personnellement je fais:

      $admin == 'Membre' ;// Apres tu met la valeur de $admin et la valeur que tu dans la bdd

      <option><?php echo $admin;?></option>

      <option>Administrateur</option>
      <option>Modérateur</option>
      <option>Membre</option>


      ok ca s'affiche deux fois , mais ca marche apres faut faire "selected= " mais apres je vois pas , c'est la où je bloque moi , bonne chance
      Attention c'est pas la meilleur méthode , mais elle marche
      A+ Icl1c
      • Partager sur Facebook
      • Partager sur Twitter
        26 novembre 2005 à 16:50:16

        Salut,
        tu peux faire comme ça :

        <?php

        $type = array(
          3 => 'Membre',
          2 => 'Moderateur',
          1 => 'Administrateur'
        );

        $nom_type = 1;

        foreach( $type as $num=>$valeur )  {
          echo '<option value="', $num, '"', ($mon_type==$num ? ' selected="selected"' : ''), '>', $valeur, '</option>';
        }
         
        ?>
        • Partager sur Facebook
        • Partager sur Twitter
          26 novembre 2005 à 16:50:36

          mon code


          <option
             <?php if ($admin == '1') echo 'checked="checked"'; ?>
             value="1">Administrateur
          </option>
          <option
             <?php if ($admin == '2') echo 'checked="checked"'; ?>
             value="2">Modérateur
          </option>
          <option
             <?php if ($admin == '3') echo 'checked="checked"'; ?>
             value="3">Membre
          </option>


          explication



          L'attribut HTML pour que la case soit sélectionnée par défaut est 'checked="checked"


          edit :


          Mon code est un peu moins générique que celui de jojo, mais il est plus simple.
          Si tu as une liste avec beaucoup d'options, préfère celui de jojo, même s'il est plus dur à comprendre.
          Si tu as une liste de petite taille, te casse pas la tête, prend le mien.
          • Partager sur Facebook
          • Partager sur Twitter
            26 novembre 2005 à 16:53:26

            bluestorm, on parle bien d'un select, et non d'un checkbox ?
            Ne serait-ce donc pas un selected="selected" ?
            • Partager sur Facebook
            • Partager sur Twitter
              26 novembre 2005 à 16:58:02

              Oui c'est un selected ;) mais ce n'est pas grave du tout le principe est là ^^

              merci beaucoup! je n'avais pas pesner faire comme sa du tout !
              • Partager sur Facebook
              • Partager sur Twitter
                26 novembre 2005 à 16:58:29

                Personnellement j'ai du mal avec ca aussi moi personnellement je fais:

                $admin == 'Membre' ;// Apres tu met la valeur de $admin et la valeur que tu dans la bdd

                <option><?php echo $admin;?></option>

                <option>Administrateur</option>
                <option>Modérateur</option>
                <option>Membre</option>


                ok ca s'affiche deux fois , mais ca marche apres faut faire "selected= " mais apres je vois pas , c'est la où je bloque moi , bonne chance
                Attention c'est pas la meilleur méthode , mais elle marche
                A+ Icl1c</span>

                Voila les autres ton donnés des meilleurs réponses a+ Icl1c
                • Partager sur Facebook
                • Partager sur Twitter

                Selection d'un choix dans une liste déroulante

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown