Il modo più semplice può essere creare due form (volendo anche nella stessa pagina oppure in pagine differenti).
Il primo form invia a se stessa (o alla pagina differente) il dato della marca, poi il secondo stampi con PHP i valori, ad esempio:
Codice PHP:
<form action="<?= $_SERVER['PHP_SELF'] ?>" method="post"> <!-- qui forse è meglio GET come method ma vedi come ti sembra meglio -->
<select name="marca">
<?php
//query SELECT marche
ciclo $riga
echo '<option ... '.(($_POST['marca']==$riga)?'selected':'').' >'.$riga;
?>
</select>
</form>
secondo form con i modelli:
<form action="<?= $_SERVER['PHP_SELF'] ?>" method="post"> <!-- qui forse è meglio GET come method ma vedi come ti sembra meglio -->
<select name="marca">
<?php
if(isset($_POST['marca'])) //se è stato inviato il primo form
{
//query SELECT modello WHERE marca=$_POST['marca']
ciclo $riga
echo '<option ...'.$riga;
}
?>
</select>
</form>
Oppure potresti fare tutto javascript, creando degli array javascript e all'onChange del primo menù setti i valori al secondo form.
Altrimenti una cosa intermedia (forse la più bella) è fare come il primo modo però tramite ajax.
EDIT:
Codice PHP:
$_SERVER['PHP_SELF']
semplicemente stampa l'indirizzo attuale della pagina
-----
Codice PHP:
(($_POST['marca']==$riga)?'selected':'')
Il funzionamento è:
Codice PHP:
if($_POST['marca']==$riga)
echo 'selected';
else echo '';
Ciao!