Salve a tutti, io ho un problema e non so come fare.

Io ho un form PHP in cui ho la scelta di
- NAzione
- Provincia
- Paese - Città

Se un utente mi sceglie solo Nazione , vorrei fare con Ajax o Javascript la selezione della Provincia e Città. Se invece l'utente sceglia sia Nazione sia Provincia, vorrei fare solo la selezione della Città. Se invece non ha scelto nulla, vorrei fare la scelta dei tre campi. Ma non so come fare in Ajax. Qualcuno ha un'idea?


Grazie a tutti

<?

$nazione = $_POST['nazione'];
$regione = $_POST['regione'];
$citta = $_POST['citta'];

if ($nazione) $id=1;
if ($regione) $id=2;
if ($citta) $id=3;

$dbhost = "localhost";
$dbuser = "root";
$dbpass = "1234";
$dbname = "realestate";
mysql_pconnect($dbhost,$dbuser,$dbpass) or die ("Unable to connect to MySQL server");


?>

<form id="test" method="post" action="<?=$_SERVER['PHP_SELF']?>">
<select name="nazione" onchange="this.form.submit()">
<option value=""></option>
<?php
$result=mysql_db_query($dbname,"select distinct(country) from addresses where detail='1'");
while(list($country)=mysql_fetch_array($result)){
if ($nazione == $country) { echo "<option value=\"$country\" selected=selected>$country</option> \n"; } else
{ echo "<option value=\"$country\">$country</option> \n"; }
}
?>
</select>

<? if ($id==1) { ?>

<select name="regione" onchange="this.form.submit()">
<option value=""></option>
<?
$result=mysql_db_query($dbname,"SELECT distinct(state) FROM addresses WHERE detail='1' and country LIKE '$nazione' ");
while(list($state)=mysql_fetch_array($result)){
if ($regione==$state) { echo "<option value=\"$state\" selected=selected>$state</option> \n" ; }
else
{
echo "<option value=\"$state\" >$state</option> \n" ;
}
}
?>
</select>
<? }
else { ?>

<select name="regione" size="1" onchange="this.form.submit()">
<option value=""></option>
<?
if ($regione=='') {
echo "<option value=\"\" selected=selected>Select a Country</option> \n" ;
}
else
{
echo "<option value=\"$regione\" selected=selected>".$regione."</option> \n" ;
}

?>
</select>

<? } ?>

<? if ($id==2) { ?>
<option value=""></option>
<select name="citta" onchange="this.form.submit()">
<?
$result=mysql_db_query($dbname,"SELECT distinct(city) FROM addresses WHERE
detail='1' and state LIKE '$regione' ");
while(list($city)=mysql_fetch_array($result)){
echo "<option value=\"$city\" >$city</option> \n" ;
}
?>
</select>
<? } else { ?>

<select name="citta" size="1" onchange="this.form.submit()">
<option value=""></option>
<?
if ($citta=='') {
echo "<option value=\"\" selected=selected>Select a Region</option> \n" ;
}
else
{
echo "<option value=\"$citta\" selected=selected>".$citta."</option> \n" ;
}

?>
</select>

<? } ?>

<div class="clear"></div>
<input type="submit" value="Filter results" name="submit" class="submit" />
<div class="clear"></div>
</form>
Se tengo questo codice non mi tiene a memoria i valori come mai? Ad esempio se l'utente sceglie la Nazione, vi é il refresh della pagina ma perde il valore Nazione, come mai?
Ossia mi tiene i valori solo se ogni volta clicco il pulsante. Io vorrei che ci fosse l'auto submit