Allora fatto con Javascript con il refresh della pagina devi fare così:
mettiamo che il tuo database sia formato da queste 3 tabelle:
Tabella regioni:
- id_regione
- regione
Tabella province:
- id provincia
- provincia
- id_regione
Tabella comuni:
- id_comune
- comune
- id_provincia
Quindi con le relazioni tra le tre tabelle con i campi id.
Alle tre select dai un id, diciamo ad esempio "id_regione", "id_provincia" e "id_comune":
a questo punto le tre select devono avere nelle option la pagina alla quale andare dopo aver selezionato il valore nella tendina. Quindi, dopo aver ad esempio selezionato la regione, si deve ricaricare la pagina, inviando l'id della regione, per poter filtrare il database e proporre la nuova select delle province relative solo a quella regione.
per fare questa operazione tecnicamente devi gestire l'evento "onchange" della select, dicendogli di andare all'indirizzo indicato nella proprietà value della relativa opzione. Quindi lo script sarà una cosa del genere:
Codice PHP:
<select name="id_regione" id="id_regione" onchange="window.parent.location=document.getElementById('id_regione').options[document.getElementById('id_regione').selectedIndex].value">
<option value="?id_regione=1">Lombardia</option>
<option value="?id_regione=2">Lazio</option>
<option value="?id_regione=3">Toscana</option>
<option value="?id_regione=4">Piemonte</option>
<option value="?id_regione=5">Sicilia</option>
</select>
Il risultato, selezionando una delle opzioni, dovrebbe essere il ricaricare la pagina, inviandogli nella url il parametro id_regione che ora potrai usare per fare la query nella tabella province estraendo solo le relative province e poi creando le option della select delle province, mettendo come value ancora la pagina, inviandogli però anche l'id della provincia...e così via...