Voila mon code :
Pays.php
function sendData(param, page)
{
if(document.all)
{
//Internet Explorer
var XhrObj = new ActiveXObject("Microsoft.XMLHTTP") ;
}
else
{
//Mozilla
var XhrObj = new XMLHttpRequest();
}
//définition de l'endroit d'affichage:
var content = document.getElementById("contenu");
XhrObj.open("POST", page);
//Ok pour la page cible
XhrObj.onreadystatechange = function()
{
if (XhrObj.readyState == 4 && XhrObj.status == 200)
content.innerHTML = XhrObj.responseText ;
}
XhrObj.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
XhrObj.send(param);
}
</scipt>
<body >
<?php
$user="root";
$host="localhost";
$password="";
$database="pays_departement_ville";
$i=0; // variable de test
$j=0;
$connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
mysql_select_db($database,$connexion);
// Séléction de tous les enregistrements de la table pays
$rq="Select * from pays ";
$result= mysql_query ($rq) or die ("Select impossible");
?>
<b><font color="black" face="Arial, Helvetica, sans-serif">Pays <br><br> </font></b>
<select style="width: 315px" size="1" name="pays" OnChange="sendData('id='+this.value,'departement.php')" onKeyUp="sendData('id='+this.value,'departement.php')"><br>
<?php
while ($dt=mysql_fetch_row($result))
{
echo "<option value=".($dt[0])." >".($dt[1])."</option>";
if ($i==0) { $j=$dt[0]; $i=1; } // garder la valeur du premier enregistrement
}
?>
<select>
<div id="contenu">
<!-- // affichage des departement appartenant au pays.-->
<select style='width: 315px' size='1' name='departement'><br>
<option value="">Selectionnez votre departement</option>
</select>
<select style='width: 315px' size='1' name='ville'>";
<option value="">Selectionnez votre ville</option>";
</select>
</div></form>
</body>
</html>
departement.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<form action="" method="post" name="frmComment" id="frmComment" onsubmit="handleSubmit(this)">
<?php
// test des POST emis
if(isset($_POST['id']) && !empty($_POST['id']) )
{
$user="root";
$host="localhost";
$password="";
$database="pays_departement_ville";
$k=0; // variable de test pour garder la valeur du premier enregistrement ville pour l'affichage
$m=0;
$connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
mysql_select_db($database,$connexion);
$rq="Select dep from departement where id_pays=".$_POST['id']." ;";
$result= mysql_query ($rq) or die ("Select impossible");
echo "<form method='POST' action='valid.php'>";
echo "<div id='contenu'>";
// $i = initialise la variable i
$i=0;
if (mysql_num_rows($result)>0)
{
?>
<select style='width: 315px' size='1' name='departement' OnChange="sendData('id_dept='+this.value,'ville.php')" onKeyUp="sendData('id='+this.value,'ville.php')" >
<?php
while ($dt=mysql_fetch_row($result))
{
echo "<option value=".utf8_encode($dt[0]).">".utf8_encode($dt[0])." </option>";
}
echo "</select>";
while ($row=mysql_fetch_row($result))
{
// Remplir la liste déroulante des catégorie
echo "<option value=".($row[0]).">".($row[1])."</option>";
if ($k==0) { $k=$row[0]; $k=1; } // garder la valeur du premier enregistrement
}
?>
<div id="contenu">
<select style='width: 315px' size='1' name='ville'>
<option value="">Selectionnez votre ville</option> </select>
<?php
$rq="Select * ville where id_dep=".$m." order by ville;";
$result= mysql_query ($rq) ;
// $i = initialise le variable i
$k=0;
while ($row=@mysql_fetch_row($result))
{
echo "<option value=".utf8_encode($row[0]).">".utf8_encode($row[0])." </option>";
}
echo "</select>";
}
else
{
?>
<input id="ville" name="ville" value="Saisissez votre ville" type="text" size="48" maxlength="48" onchange="handleChange(this)" onclick="if (this.value=='Saisissez votre ville') this.value=''" />
</form>
<?php
}
}
?>
</body>
</html>
et ville.php
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
// test des POST emis
if(isset($_POST['id_dept']) && !empty($_POST['id_dept']) )
{
$user="root";
$host="localhost";
$password="";
$database="pays_departement_ville";
$connexion = mysql_connect($host,$user,$password) or die ("Connexion au serveur impossible");
mysql_select_db($database,$connexion);
$rq="Select ville from ville where id_dep=".$_POST['id_dept']." order by ville";
$result= mysql_query ($rq) ;
echo "<form method='POST' action='valid.php'>";
$query = "SELECT dep from departement where id_dep=".$_POST['id_dept']." ";
$resultat = mysql_query($query);
echo " <select style='width: 315px' size='1' name='departement'>";
while ($query=mysql_fetch_row($resultat))
{
// Remplir la liste déroulante des catégorie
echo "<option value=".($query[0]).">".($query[0])."</option>";
}
echo " </select>";
// $k = initialise le variable k
$k=0;
if (mysql_num_rows($result)>0)
{
echo "<select style='width: 315px' size='1' name='ville'>";
while ($row=mysql_fetch_row($result))
{
echo "<option value=".utf8_encode($row[0]).">".utf8_encode($row[0])." </option>";
}
}
echo "<option value=''> Selectionnez votre ville </option>";?>
<?php
echo "</select>";
}
?>
</form>
</body>
</html>
comme je ne sais pas quelle partie envoyer j'ai tout mis, j'espère que c'est claire
Merci