Partage
  • Partager sur Facebook
  • Partager sur Twitter

Selectionner ce qui a deja été choisi

Sujet résolu
    2 décembre 2006 à 20:27:15

    Bonjour,
    voici mon probleme :
    dans une liste deroulante, je voudrais que soit séléctionner le champ dont sa valeur se trouve dans la base de données !
    Voici la liste :
      <select name="cat">
      <optgroup label="Site">
      <option value="1">Nouvelle</option>
      <option value="9">Envoi d'images</option>
      <option value="10">Maintenance</option>
      <option value="14">Design</option>
      </optgroup><optgroup label="Forum">
      <option value="2">Forum</option>
      <option value="11">Sondage</option>
      </optgroup><optgroup label="Membres">
      <option value="7">Membre</option>
      <option value="12">Connect&eacute;</option>
      <option value="8">Messagerie</option>
      <option value="13">Amis - Ennemi</option>
      </optgroup><optgroup label="Services">
      <option value="3">Service (en
    G&eacute;n&eacute;ral)</option>
      <option value="4">Service 1</option>
      <option value="5">Service 2</option>
      <option value="6">Service 3</option>
      </optgroup>
      </select>

    Et la variable qui contient la valeur deja définie
    $cat

    Merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      2 décembre 2006 à 20:29:16

      <?php
      $cat = $_POST['cat'];
      ?>


      Ca correspont au "name" de la liste déroulante
      • Partager sur Facebook
      • Partager sur Twitter
        2 décembre 2006 à 20:34:50

        Oui enfin je me suis mal exprimé...

        Le 'cat', le nom cat vient du champ name que tu as definie.

        Apres si tu fait un "echo $cat;", c'est le "value" qui sera affiché.
        • Partager sur Facebook
        • Partager sur Twitter
          2 décembre 2006 à 20:36:24

          Ca se fait facilement en JavaScript.

          Moins pratique, plus lourd, mais ça marche sans JavaScript :
          Tu modifies tous tes <option> en :

          <option value="x" selected="<?php if($valeur_de_la_bdd == 'x') echo 'selected'; ?>"> <!-- x étant la valeur de <option> -->
          • Partager sur Facebook
          • Partager sur Twitter
            2 décembre 2006 à 20:39:13

            Ok, merci ! :p

            Edit: Bien cette methode, mais elle ne marche pas !
              <select name="cat">
              <optgroup label="Site">
              <option value="1" selected="<?php if($cat == 1) echo 'selected'; ?>">Nouvelle</option>
              <option value="9" selected="<?php if($cat == 9) echo 'selected'; ?>
            ">Envoi d'images</option>
              <option value="10" selected="<?php if($cat == 10) echo 'selected'; ?>">Maintenance</option>
              <option value="14" selected="<?php if($cat == 14) echo 'selected'; ?>
            ">Design</option>
              </optgroup><optgroup label="Forum">
              <option value="2" selected="<?php if($cat == 2) echo 'selected'; ?>">Forum</option>
              <option value="11" selected="<?php if($cat == 11) echo 'selected'; ?>
            ">Sondage</option>
              </optgroup><optgroup label="Membres">
              <option value="7" selected="<?php if($cat == 7) echo 'selected'; ?>">Membre</option>
              <option value="12" selected="<?php if($cat == 12) echo 'selected'; ?>
            ">Connect&eacute;</option>
              <option value="8" selected="<?php if($cat == 8) echo 'selected'; ?>">Messagerie</option>
              <option value="13" selected="<?php if($cat == 13) echo 'selected'; ?>
            ">Amis - Ennemi</option>
              </optgroup><optgroup label="Services">
              <option value="3" selected="<?php if($cat == 3) echo 'selected'; ?>">Service (en G&eacute;n&eacute;ral)</option>
              <option value="4" selected="<?php if($cat == 4) echo 'selected'; ?>
            ">Service 1</option>
              <option value="5" selected="<?php if($cat == 5) echo 'selected'; ?>">Service 2</option>
              <option value="6" selected="<?php if($cat == 6) echo 'selected'; ?>
            ">Service 3</option>
              </optgroup>
              </select>
            • Partager sur Facebook
            • Partager sur Twitter
              3 décembre 2006 à 10:46:08

              Tu peux toujours essayer en mettant des double quotes (") à la valeur sous PHP ($cat == "10")

              Si ça ne marche pas, je ne sais pas comment t'aider :p
              • Partager sur Facebook
              • Partager sur Twitter
                3 décembre 2006 à 10:52:28

                Non, ca ne marche aps !

                Edit : J'ai compris ! Enfaite, le serveur se fout de ce que tu met a selected ! Que tu mettes selected, rien ou poubelle, ca fonctionnera ! Donc en faite, mon code doit etre :
                  <select name="cat">
                  <optgroup label="Site">
                  <option value="1" <?php if($cat == 1) echo 'selected="selected"'; ?>>Nouvelle</option>
                  <option value="9" <?php if($cat == 9) echo 'selected="selected"'; ?>>Envoi d'images</option>
                  <option value="10" <?php if($cat == 10) echo 'selected="selected"'; ?>>Maintenance</option>
                  <option value="14" <?php if($cat == 14) echo 'selected="selected"'; ?>>Design</option>
                  </optgroup><optgroup label="Forum">
                  <option value="2" <?php if($cat == 2) echo 'selected="selected"'; ?>>Forum</option>
                  <option value="11" <?php if($cat == 11) echo 'selected="selected"'; ?>>Sondage</option>
                  </optgroup><optgroup label="Membres">
                  <option value="7" <?php if($cat == 7) echo 'selected="selected"'; ?>>Membre</option>
                  <option value="12" <?php if($cat == 12) echo 'selected="selected"'; ?>>Connect&eacute;</option>
                  <option value="8" <?php if($cat == 8) echo 'selected="selected"'; ?>>Messagerie</option>
                  <option value="13" <?php if($cat == 13) echo 'selected="selected"'; ?>>Amis - Ennemi</option>
                  </optgroup><optgroup label="Services">
                  <option value="3" <?php if($cat == 3) echo 'selected="selected"'; ?>>Service (en G&eacute;n&eacute;ral)</option>
                  <option value="4" <?php if($cat == 4) echo 'selected="selected"'; ?>>Service 1</option>
                  <option value="5" <?php if($cat == 5) echo 'selected="selected"'; ?>>Service 2</option>
                  <option value="6" <?php if($cat == 6) echo 'selected="selected"'; ?>>Service 3</option>
                  </optgroup>
                  </select>
                • Partager sur Facebook
                • Partager sur Twitter

                Selectionner ce qui a deja été choisi

                × 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