hai chiuso due volte la seconda select...

poi, prova a recuperare la variabile regione attraverso l'array $_POST, quindi dopo queste righe:

codice:
$query="SELECT DISTINCT regione FROM 004_provincia order by 'regione'"; 
$result = mysql_query($query);

mettici

codice:
$regione = $_POST['regione'];
nella tabella 004_provincia la regione, è un intero o un varchar come nella tabella delle regioni?


lo script l'ho fatto quando ero molto agli inizi con il php...adesso lo scriverei un tantino ottimizzato