Liste déroulante et affichage

Signaler
Messages postés
81
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
7 août 2009
-
Messages postés
30
Date d'inscription
samedi 19 avril 2003
Statut
Membre
Dernière intervention
13 mars 2007
-
Bonjour @ tous !
Voici mon soucis :
j'ai une liste déroulante contenant les données du BD mysql.
Je souhaite affiche dans un les champs associées à la valeur sélectionnée dans la liste déroulante sans passer par un bouton valider.
Je souhaite éviter aussi de passer par du javascript pke je déteste ça (sauf si c'est vraiment la seule solution).

Voici un bout de mon code

<tr>
          <td>Enveloppe</td>
          <td><select name="env_b" onchange="">
                 <option value="">- Enveloppe -</option>
               <?php
               $sql="SELECT num_env_b,libelle,article_b,chapitre_b,fonction_b,
                     gestionnaire,gest FROM env_bene,membre
                     WHERE env_bene.gestionnaire=membre.gest
                     AND membre.login='".$_SESSION['nom']."'";
               echo $sql;
               $res=mysql_query($sql) or die (mysql_error());
               while($row=mysql_fetch_array($res))
              {
               echo "<option value='".$row['num_env_b']."'>".$row['num_env_b']." / ".$row['libelle']."</option>";
              }
              ?>
              </select>
          </td>
          <td>"></td>
         </tr>

Didine

3 réponses

Messages postés
30
Date d'inscription
samedi 19 avril 2003
Statut
Membre
Dernière intervention
13 mars 2007

Salut Didine,

Malheureusement ici, le javascript est indispensable. Rien ne se passe quand on choisit un élement dans la liste à part en utilisant du javascript.

ca sera en gros :

<tr>
          <td>Enveloppe</td>
          <td><select name= "env_b" onchange=" document.getElementById(' affichage').value =this.options[this.selectedIndex].value">
                 <option value="">- Enveloppe -</option>
               <?php
               $sql="SELECT num_env_b,libelle,article_b,chapitre_b,fonction_b,
                     gestionnaire,gest FROM env_bene,membre
                     WHERE env_bene.gestionnaire=membre.gest
                     AND membre.login='".$_SESSION['nom']."'";
               echo $sql;
               $res=mysql_query($sql) or die (mysql_error());
               while($row=mysql_fetch_array($res))
              {
               echo "<option value='".$row['num_env_b']."'>".$row['num_env_b']." / ".$row['libelle']."</option>";
              }
              ?>
              </select>
          </td>
          <td>"></td>
         </tr>

Mais je n'ai pas vérifié, c'est juste une idée...
Messages postés
81
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
7 août 2009

Salut Weboide !

Ok, j'ai testé, et le bout de Javascript fonctionne.
Par contre, je souhaite maintenant utiliser la valeur, qui est dans le dernier champ input. Comment je fais pour la récupérer dans une variable php sans rafraichir ma page ?

Didine
Messages postés
30
Date d'inscription
samedi 19 avril 2003
Statut
Membre
Dernière intervention
13 mars 2007

Sans rafraichir la page c'est impossible car le php est éxecuté/traité avant d'envoyer la page à l'utilisateur. Donc pour réexecuter du php apres que la page soit deja envoyée, il faut réexecuter une nouvelle page php (ou la meme).

Et oui en php il faut raffraichir la page tout le temps