Il faut que programme en ajax.
Ca peut paraitre un compliquer au premier abord mais c'est pas bien dur.
Voila un petit exemple qui te permet de synchroniser une liste.
re
<?php
$num=$_GET["num"];
$idc=mysql_connect("localhost","root","");
mysql_select_db("test_ajax",$idc);
$sql="select * from t2 where num_pers=".$num;
$rs=mysql_query($sql,$idc);
print("<SELECT NAME=\"zl2\" SIZE=\"5\">");
while($lg=mysql_fetch_assoc($rs))
{
print ("<option value=\"".$lg["num"]."\">".$lg["v"]."</option>\n");
}
print("</SELECT>");
?>
<script language="javascript">
var httpRequest;
function recup_data()
{
if (httpRequest.readyState == 4 && httpRequest.status == 200)
{
zl.innerHTML=httpRequest.responseText;
}
}
function synchro_lst()
{
if (window.XMLHttpRequest)
{ // Mozilla, Safari, ...
httpRequest = new XMLHttpRequest();
if (httpRequest.overrideMimeType)
{
httpRequest.overrideMimeType('text/xml');
}
}
else
{
if (window.ActiveXObject)
{ // IE
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
}
var num = document.frm["zl_pers"].value
httpRequest.onreadystatechange = recup_data;
httpRequest.open("GET", "recup_info.php?num="+num, true);
httpRequest.send(null);
}
</script>
<html>
<FORM NAME="frm" METHOD="post" ACTION="fin.php">
Personnes<SELECT NAME="zl_pers" onchange="synchro_lst()">
<?php
$idc=mysql_connect("localhost","root","");
mysql_select_db("test_ajax",$idc);
$sql="select * from personne";
$rs=mysql_query($sql,$idc);
while($lg=mysql_fetch_assoc($rs))
{
print <<<del
<OPTION VALUE="$lg[num_pers]">$lg[nom_pers]</OPTION>
del;
}
?>
</SELECT><BR>
Sous table <div id="zl">
<SELECT NAME="zl2" SIZE=5>
</SELECT>
</div><BR>
<INPUT TYPE="submit" VALUE="Valider">
</FORM>
</html>