Listes déroulantes liées (requêtes sql + php)

cs_orelien Messages postés 137 Date d'inscription dimanche 7 juillet 2002 Statut Membre Dernière intervention 11 janvier 2009 - 6 janv. 2005 à 10:01
the_smurf Messages postés 283 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 22 juin 2006 - 6 janv. 2005 à 17:10
Bonjour,

J'aimerais relier deux listes déroulantes remplies par une base de données. La première correspond à la table "rubriques" et l'autre à la table "sous-rubriques".

Lorque je sélectionne une rubrique dans la liste déroulante #1, j'aimerais que la deuxième se mette à jour automatiquement.

Quelqu'un peut-il m'aider ?

Merci

Orélien.

5 réponses

the_smurf Messages postés 283 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 22 juin 2006
6 janv. 2005 à 10:35
Voici un code js posté précédemment qui devrait t'aider:

<script language="JavaScript" type="text/JavaScript">
var mod=new Array();
mod[1]=new Array("Alcatel 1", "Alcatel 2");
mod[2]=new Array("LG 1", "LG 2");
mod[3]=new Array("Maxon 1", "maxon 2");
mod[4]=new Array("Nec 1", "nec 2");
mod[5]=new Array("Nokia 1", "Nokia 2");
mod[6]=new Array("Panasonic 1", "Panasonic 2");
// etc...


function updateMod()
{
var newOpt;
var cl_=document.getElementById("selectmarque").value;
clearMod();
newOpt=new Option("<modele>", 0);
document.getElementById("selectmodele").options[0]=newOpt;
if (cl_!=0)
{
for (i_=0; i_<mod[cl_].length; i_++)
{
newOpt=new Option(mod[cl_][i_], mod[cl_][i_]);
document.getElementById("selectmodele").options[document.getElementById("selectmodele").length]=newOpt;
}
}
}


function clearMod()
{


while (document.getElementById("selectmodele").options.length>0)
document.getElementById("selectmodele").options[document.getElementById("selectmodele").options.length-1]=null;
}


</script>
</head>



<FORM name="frm" method="POST">
<select id="selectmarque" onchange="updateMod()">
<option value="0" selected><Marque></option>
<option value="1">Alcatel</option>
<option value="2">LG</option>
<option value="3">Maxon</option>
<option value="4">Nec</option>
<option value="5">Nokia</option>
<option value="6">Panasonic</option>
</select>


<select name="selectmodele" >
</select>


</FORM>


Posté par:
Roro webDev


The SMURF
[mailto:the_little_smurf@yahoo.fr the_little_smurf@yahoo.fr]
Enjoy the life, don't waste your time in front of your computer
0
cs_orelien Messages postés 137 Date d'inscription dimanche 7 juillet 2002 Statut Membre Dernière intervention 11 janvier 2009
6 janv. 2005 à 11:18
Merci,

mais comment insérer le code php qui devra remplir les liste avec une base de donnée ?

Merci
Orélien.
0
the_smurf Messages postés 283 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 22 juin 2006
6 janv. 2005 à 11:36
Il faut générer dynamiquement ce code js:

1/ récupérer les données de ta base de données
2/ générer dynamiquement en php le menu et le sous menu, soit deux petites boucles, une pour créer le tableau js des sous menus et une pour créer les options du select représentant les menus...


The SMURF
[mailto:the_little_smurf@yahoo.fr the_little_smurf@yahoo.fr]
Enjoy the life, don't waste your time in front of your computer
0
cs_orelien Messages postés 137 Date d'inscription dimanche 7 juillet 2002 Statut Membre Dernière intervention 11 janvier 2009
6 janv. 2005 à 15:44
Je n'ai pas réussi à mettre faire fonctionner tout ça de cette manière. Pourrais-tu me faire parvenir un exemple stp ?

Merci.

Orélien.
0

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

Posez votre question
the_smurf Messages postés 283 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 22 juin 2006
6 janv. 2005 à 17:10
Je n'ai pas les outils pour faire du php là où je suis...
Mais tu peux prendre exemple sur le post intéraction entre deux / trois listes déroulantes d'aujourd'hui. Tu y veras comment on peut récupérer les données des tables et générer du code (javascript ou HTML) à partir du PHP.
Tu veras ce n'est pas très difficile...

Bon courage


The SMURF
[mailto:the_little_smurf@yahoo.fr the_little_smurf@yahoo.fr]
Enjoy the life, don't waste your time in front of your computer
0
Rejoignez-nous