Solo php se me ocurre que llenes un primero un select dentro de un formulario al seleccionar submites el formulario
(funcion de javascript submit)
luego con ese valor que envias haces las validaciones en el archivo no??
ponte algo asi
que tuviese 3 formularios al principio llenas dos
y el tercero lo llenas recien con los valores que recibes de los 2 primeros form
<html>
<body>
<?php
if (isset($_POST['form1']) && isset($_POST['form2']))
{
//aka codigo para llenar el tercer form
mysql_query("select * from table where campo1 = '".$_POST['form1']."' and campo2 = '".$_POST['form2']."'")
//llenas el select con los valores recogidos de los dos primeros
//form
}else{
//si no estan cargadas las dos variables del array
//POST entonces muestras solo los dos primeros select
//aca tu codigo metelas en un formulario y para enviarlo
//lo realizas con javascript en el evento onchange o
//bueno ya tu te las arreglas :P para 4 select seria igual solo
//agregas un if mas
}
?>
<body>
</html>
eso si te va a quedar bien feo
te recomiendo que aprendas ajax se vera mucho mas amigable tu formulario =)