Liste déroulante et champs texte [Résolu]

cs_didine6 81 Messages postés vendredi 19 novembre 2004Date d'inscription 7 août 2009 Dernière intervention - 26 févr. 2007 à 10:36 - Dernière réponse : cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention
- 27 févr. 2007 à 09:28
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
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 26 févr. 2007 à 11:48
3
Merci
>>Je souhaite éviter aussi de passer par du javascript pke je déteste ça
           ah bon ? quelle idée ! c'est superbe le javascript...
               pourquoi cet à priori ?

>>sans passer par un bouton valider.
        ah... là t'es mal, car pour agir sans valider :  javascript obligatoire....

par contre tu nous donnes le php, et nous on en faut quoi ?
    déjà, on n'a pas ta base de données... il faut fournir la page
    html générée !!!! ( enfin un extrait )

    enfin, pour ici, ça devrait aller...

    ajoute  id="toto" à l'input text
    et sur le select,
    ...onchange=" document.getElementById('toto').value=this[this.selectedIndex].text; " ...

    encore un truc, si select n'a pas de size, la 1ère ligne est sélectionnée par défaut
       et cliquer dessus ne provoquera pas de onchange
    met size=2 au moins ou
    ajoute onfocus="this.selectedIndex=-1;"



<hr />



Cordialement                Bul             [mon Site]     [M'écrire]     




<hr />

Merci cs_bultez 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de cs_bultez
Meilleure réponse
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 26 févr. 2007 à 12:05
3
Merci
ma dernière remarque est sans <option value="">- Enveloppe -</option>
    que je n'avions point vu.


si tu le laisses, il faudra tester que this.selectedIndex est >0
mais moi : "j'aime pas"
j'utilise <optgroup label="- Enveloppe -">
                .... les options générées
             </optgroup>

<hr />


Cordialement            Bul         [mon Site]     [M'écrire]  




<hr />

Merci cs_bultez 3

codes-sources a aidé 82 internautes ce mois-ci

Commenter la réponse de cs_bultez
cs_didine6 81 Messages postés vendredi 19 novembre 2004Date d'inscription 7 août 2009 Dernière intervention - 26 févr. 2007 à 13:32
0
Merci
Merci, c'est parfait...et très utile.
J'vais ptét me mettre au javascript finalement !

Didine
Commenter la réponse de cs_didine6
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 26 févr. 2007 à 14:08
0
Merci
>>J'vais ptét me mettre au javascript finalement !

ce serait dommage de ne pas le faire. la navigation web peut être améliorée,
    et avec ActiveX pour IE, XUL/XPCom pour FF... on peut développer des
    applications "normales" ( gestion de fichiers, base de données ... au moins
    en local ), un langage de programmation quoi.



<hr />



Merci du retour            Bul         [mon Site]     [M'écrire]        




<hr />
Commenter la réponse de cs_bultez
cs_didine6 81 Messages postés vendredi 19 novembre 2004Date d'inscription 7 août 2009 Dernière intervention - 26 févr. 2007 à 15:31
0
Merci
T'as l'air calé.
Est ce que tu connais des bons tutoriels ? des livres ?

Didine
Commenter la réponse de cs_didine6
cs_didine6 81 Messages postés vendredi 19 novembre 2004Date d'inscription 7 août 2009 Dernière intervention - 26 févr. 2007 à 16:07
0
Merci
Et une dernière question, comment je fais pour récupérer cette valeur dans une variable afin de l'utiliser dans une requête ?

Didine
Commenter la réponse de cs_didine6
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 26 févr. 2007 à 18:04
0
Merci
>>

T'as l'air calé.

    j'arive à le faire croire, mais je ne comprend pas grand chose

>>Est ce que tu connais des bons tutoriels ? des livres ?
    non. j'utilise la doc  (.chm )  de SelfHTML , mais ce n'est pas
     pour apprendre, c'est un truc de référence  ( la version htm existe
    les 2 sont téléchargeables et en français )

>>comment je fais pour récupérer cette valeur dans une variable afin de l'utiliser dans une requête
    un name pour le champ désiré, dans le formulaire qui sera transmis.




<hr />



Cordialement            Bul         [mon Site]     [M'écrire]  




<hr />
Commenter la réponse de cs_bultez
cs_didine6 81 Messages postés vendredi 19 novembre 2004Date d'inscription 7 août 2009 Dernière intervention - 26 févr. 2007 à 21:35
0
Merci
Non, non tu n'as pas compris.
Je veux récupérer la valeur de ma liste déroulante dans un . ça ok, j'ai réussi.
Et je veux ensuite faire une requête avec cette variable dans le même formulaire...

Didine
Commenter la réponse de cs_didine6
cs_bultez 13619 Messages postés jeudi 13 février 2003Date d'inscription 15 octobre 2013 Dernière intervention - 27 févr. 2007 à 09:28
0
Merci
Bonjour,

pour faire une requête, il faut le faire en PHP.
pour appeler le PHP, il faut le faire par un formulaire
( action="nom du.php" method="post ou get"... )
et tous les champs de ce formulaire qui ont un name sont
traitables par le php. ( on peut aussi faire ça à travers l'URL ).

<hr />


Cordialement            Bul         [mon Site]     [M'écrire]     




<hr />
Commenter la réponse de cs_bultez

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.