j'ai adapté ce tuto a ma bdd pour faire des listes déroulantes liées
http://www.aidejavascript.com/article15 ... sommaire_1
il ne m'affiche qu'une boite select avec 2 valeurs : $id_gam, $id_gam, directement le nom de variable, si quelqu'un peut me débloqué merci
<html>
<body>
<form action="test.php" method="post">
<fieldset>
<legend></legend>
<?php
$dbhost="localhost";
$dblogin="xxxxxxxx";
$dbpassword="xxxxxxxxxxx";
$dbname="xxxxxxxxxxxxx";
mysql_connect($dbhost,$dblogin,$dbpassword);
mysql_select_db($dbname);
// Execution requête
$ma_req = "SELECT id_gam FROM gamme";
echo $ma_req;
$res_req = mysql_query ($ma_req);
$liste_gam = mysql_fetch_array($res_req);
// récupération des pays dans la BDD ou dans un fichier
// création de la liste des pays
$select1 = '<select name="id_gam" onchange="this.form.submit()">';
foreach ($liste_gam as $id_gam) {
if (isset($_REQUEST["id_gam"]) && $_REQUEST["id_gam"])
$select1 .= '<option value="$id_gam" selected="selected">$id_gam</option>';
else $select1 .= '<option value="$id_gam">$id_gam</option>';
}
$select1 .= '</select>';
// création de la liste des régions, si un pays a été sélectionné
if (isset($_REQUEST["id_gam"]) && $_REQUEST["id_gam"]) {
// récupération des régions dans la BDD ou dans un fichier
$ma_req2 = "SELECT id_niveau1 FROM niveau1 WHERE id_gam = $id_gam";
$res_req2 = mysql_query ($ma_req2);
$liste_niveau1 = mysql_fetch_array($res_req2);
if ($liste_niveau1) {
// création de la liste des régions
$select2 = '<select name="id_niveau1" onchange="this.form.submit()">';
foreach ($liste_niveau1 as $id_niveau1) {
if (isset($_REQUEST["id_niveau1"]) && $_REQUEST["id_niveau1"])
$select2 .= '<option value="$id_niveau1" selected="selected">$id_niveau1</option>';
else $select2 .= '<option value="$id_niveau1">$id_niveau1</option>';
}
$select2 .= '</select>';
}
else $select2 = '';
}
else $select2 = '';
// création de la liste des villes, si une région a été sélectionnée
if (isset($_REQUEST["id_niveau1"]) && $_REQUEST["id_niveau1"]) {
// récupération des villes dans la BDD ou dans un fichier en fonction de la région
$ma_req3 = "SELECT id_niveau2 FROM niveau2 WHERE id_id_niveau1 = $id_id_niveau1;";
$res_req3 = mysql_query ($ma_req3);
$liste_niveau1 = mysql_fetch_array($res_req3);
$liste_villes = lireVilles($_REQUEST["region"]);
// création de la liste des localités
if ($liste_villes) {
$select3 = '<select name="ville">';
foreach ($liste_villes as $ville) {
$select3 = '<option value="$ville"> ' . $ville . '</option>';
}
$select3 .= '</select>';
}
else $select3 = '';
}
else $select3 = '';
echo $select1;
echo $select2;
echo $select3;
?>
</fieldset>
</form>
</body>
</html>