Liste deroulante avec base de données [Résolu]

Signaler
Messages postés
20
Date d'inscription
mardi 7 septembre 2004
Statut
Membre
Dernière intervention
22 juin 2005
-
bandzai87
Messages postés
20
Date d'inscription
mardi 7 septembre 2004
Statut
Membre
Dernière intervention
22 juin 2005
-
Donc voilà mon truc g une liste deroulantes qui est liées a une autre,
elles marchent mais les infos sont écrites en dure j'aimerai faire
appelle a des infos dans une base de données pouvez vous m'aider !!!


-----------------------------------------------------------------------------------------------



<script language="javascript">

var dept = new Array; //nouveau tableau

dept[0] = new Array("d0", "Haute-Vienne"); //nouveau tableau, on va donc avoir dept[0][0]="d0"

dept[1] = new Array("d1", "Creuse"); <== c'est ces infos que je veux prendre dans une base de données

dept[2] = new Array("d2", "Correze"); <== c'est ces infos que je veux prendre dans une base de données



var ville=new Array;

// dept0

ville["d0"] = new Array;

ville["d0"][0] = new Array("d0v0", "Aixe-sur-vienne");<== c'est ces infos que je veux prendre dans une base de données

ville["d0"][1] = new Array("d0v1", "Bellac");<== c'est ces infos que je veux prendre dans une base de données

ville["d0"][2] = new Array("d0v2", "Le Dorat");

ville["d0"][3] = new Array("d0v3", "Le Palais");

ville["d0"][4] = new Array("d0v4", "Limoges");

ville["d0"][5] = new Array("d0v5", "Saint Yrieix");



//dept1

ville["d1"]=new Array;

ville["d1"][0] = new Array("d1v0", "Aubusson");

ville["d1"][1] = new Array("d1v1", "Evaux les bains");

ville["d1"][2] = new Array("d1v2", "Gueret");



//dept2

ville["d2"] = new Array;

ville["d2"][0] = new Array("d2v0", "Argentat");

ville["d2"][1] = new Array("d2v1", "Brive");

ville["d2"][2] = new Array("d2v2", "Tulle");

ville["d2"][3] = new Array("d2v3", "Ussel");







function filltheselect(liste, choix)

{switch (liste)

{

case "listedept":

raz("listeville");



for (i=0; i<ville[choix].length; i++)

{

new_option = new Option(ville[choix][i][1],ville[choix][i][0]);


document.formu.elements["listeville"].options[document.formu.elements["listeville"].length]=new_option;

}



break;



}

}



function raz(liste)

{l=document.formu.elements[liste].length;

for (i=l; i>=0; i--)

document.formu.elements[liste].options[i]=null;

}

</script>

</head>



<form name="formu" action="deroul.php"method="post">



Choisir un dept



<select name="listedept" onChange='javascript:filltheselect(this.name, this.value)'>

<script language="javascript">

for (i=0; i<dept.length; i++)

document.write("<option value="" +dept[i][0]+ "">" +dept[i][1]);

</script>

</select>





Choisir une ville

<select name="listeville" onChange='javascript:filltheselect(this.name, this.value)'>

<script language="javascript">

for (i=0; i<ville["d0"].length; i++)

document.write("<option value="" +ville["d0"][i][0]+ "">" +ville["d0"][i][1]);

</script>

</select>







</select>

</form>



</html>

9 réponses

Messages postés
507
Date d'inscription
mardi 18 février 2003
Statut
Membre
Dernière intervention
22 juin 2012
2
<!--creation d'une liste déroulante en HTML-->
<SELECT SIZE='1' NAME='nom'>
<!--Début du code PHP-->
<?
//connection a MySQL
$idConnexion = mysql_connect("localhost", "root", "") or die("Connexion impossible");

mysql_select_db("ta-base",$idConnexion);
//on sélectionne la table ou les donné son stoker
$requete = "select * from ta-table order by ID desc";


$envoi = mysql_query($requete);
//tant qu'il y a des données dans la table
while($tableau = mysql_fetch_array($envoi))



{
//on récupere les données dans une variable
$ton-champs = $tableau['ton-champs'];
//on affiche une OPTION du menu déroulant


echo "<OPTION VALUE='$ton-champs'>$ton-champs</OPTION>";


}
//fin du code PHP
?>
<!--Fin de la liste déroumlante-->
</SELECT>

en français tu creer une liste déroulante et le information qui vont etre a l'interieur seront les donné de ta qui sont dans ta base de donné

voila je pense que c'est assez commenter

L0rD...
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
code-le plus proprement ton exemple ^^



<? à remplacer par <?php



les balises <select et <option> en minuscules (et tous leurs attributs)

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
20
Date d'inscription
mardi 7 septembre 2004
Statut
Membre
Dernière intervention
22 juin 2005

meme si votre solution est un autre code que le mien je suis preneur lol ;)
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



tu crées deux champs dans une table, et tu y mets tes infos.
"d0v0", "Aixe-sur-vienne"




<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
507
Date d'inscription
mardi 18 février 2003
Statut
Membre
Dernière intervention
22 juin 2012
2
<SELECT SIZE='1' NAME='nom'>


<?


$idConnexion = mysql_connect("localhost", "root", "") or die("Connexion impossible");


mysql_select_db("ta-base",$idConnexion);


$requete = "select * from ta-table order by ID desc";


$envoi = mysql_query($requete);


while($tableau = mysql_fetch_array($envoi))


{


$ton-champs = $tableau['ton-champs'];


echo "<OPTION VALUE='$ton-champs'>$ton-champs</OPTION>";


}


?>


</SELECT>

cette solution néccessite un champs ID sur ta table (int auto_increment de préférence)

L0rD...
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
c'est propre

<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
20
Date d'inscription
mardi 7 septembre 2004
Statut
Membre
Dernière intervention
22 juin 2005

Oui elle est créer la table ville ou dept, mais moi je veux savoir comment on fait appel a ces infos dans mon code !
Messages postés
20
Date d'inscription
mardi 7 septembre 2004
Statut
Membre
Dernière intervention
22 juin 2005

peux tu expliquer ton code je comprend pas trop merci dsl je débute.
Messages postés
20
Date d'inscription
mardi 7 septembre 2004
Statut
Membre
Dernière intervention
22 juin 2005

Merci les gars c cool !!! Mais [auteurdetail.aspx?ID=54312 xactise] fait gaffe a ce que tu écrit tu zap des mots lol