[PHP]

Résolu/Fermé
didi - 26 avril 2005 à 02:50
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 - 26 avril 2005 à 21:14
Bonjour,

voilà j'ai un petite question concernant les listes déroulantes.
Bon, j'ai une liste déroulante qui contient des données extraites d'une base de données, pour l'instant la liste ne me sert qu'à montrer les données. Mais on me demande la chose suivante:
Quand un utilisateur choisit une donnée qu'il y ait un champ qui apparaît à côté de la liste en montrant des infos sur la donnée qu'il a choisie...

Quelqu'un peut-il m'aider svp???
Merci d'avance
A voir également:

8 réponses

kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
26 avril 2005 à 08:53
Il faut mettre un script javascript, apres... je peux as te renseigner plus la dessus.
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
26 avril 2005 à 09:53
Yep, tu récupères les descriptions de tes données dans des variables Javascript.
Tu les mets dans un tableau par exemple:
description[1]="Machintruc";
description[2]="Machinchose";

Et tu t'arrange pour les mettres en relation avec les choix de ta liste déroulante. Par exemple pour donnee[1], tu as sa description dans description[1], pour donnee[2] tu as description[2]....et voilà, après faut trouver l'évènement qui concerne la selection d'un élément d'une liste déroulante.

Voilà, je connais pas exactement la syntaxe javascript donc faut voir ça.
0
il me semblait bien que ce n'est pas réalisable avec du php!
Merci
0
SJEric Messages postés 26 Date d'inscription jeudi 18 janvier 2001 Statut Membre Dernière intervention 13 juin 2006 1
26 avril 2005 à 12:43
Mais c'est possible en PHP....
Ma copine l'a fait pour son mémoire:
1/ Tu mets 1 bouton submit près de ta liste déroulante (pour valider le choix de la liste)
2/ Tu dois récupérer la valeur de l'élément de la liste sélectionné, en fonction de cette valeur, tu fais une query dans ta db et tu affiches les infos récupérées.
Bon, j'espère que le jargon est compréhensible ....
Bon travail !!!!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Oui mais moi mon idée de départ était de ne pas avoir le bouton submit. Je voulais simplement que quand on choisit une option les données s'affichent sans passer par un bouton "submit".

Merci pour la suggestion SJEric. Je vais essayer, dans un premier temps, de le faire comme tu me dit....
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
26 avril 2005 à 19:02
Je persiste à dire qu'il te faut du javascript, avec une zone de texte à coté de ta liste déroulante, en mode caché, qui se met en mode visible lorsque l'utilisateur selectionne une valeur dans la liste déroulante et qui propose une desciption de ce qui est selectionné.
Ca existe mais je sais pas comment exactement, donc reseigne toi de ce coté.
++
0
ok merci beaucoup
0
kilian Messages postés 8731 Date d'inscription vendredi 19 septembre 2003 Statut Modérateur Dernière intervention 20 août 2016 1 527
26 avril 2005 à 21:14
Tu peux aussi poser une condition en Javascript.
Genre: "si un truc vient d'être selectionné par l'utilisateur dans le menu, alors envoyer le formulaire"...

Et là tu envoie les informations vers une autre page (ou la même) qui executera une requête Sql et ira chercher les informations correspondantes à la selection choisie, puis tu recharges ta page et réactualise les données....

Faut voir le plus adapté à ton cas, sachant que la technique évoquée par kij_82 me paraît plus simple dans l'absolu....

Si tu n'as pas enormément de données dans ta liste déroulante, et si les descriptions qui doivent apparaître selon la selection ne doivent pas rester "confidentielles" (sacahnt qu'elles seront toutes dans la source de la page, visibles par le client) alors tu peux utiliser la technique de kij_82 je pense....
0