Codice PHP:

$where    
=''// questa non la svuoti ad ogni ciclo ma la setti inizialmente...
while( list($key$value) = each($content) ){ // scompatto l'array
if ($value//se la variabile è piena
switch ($key){ // controllo il contenuto di $key
case 'tipologia' :  //se e' == a tipologia
$where .= "tipologia = '$value'"//accodi il contenuto a $where --> accodi... ecco perche' c'erano gli && 
break;
case 
'regione' :
$where .= "&& regione = '".$value."'";
break;} 
case 
'dist_min':
$where .= "&& dist_min >= '$value'";
break;
$where .= "&& dist_max <= '$value'";
break;
}
$query="select * from prova where $where "
ecc.
--------------------------------------------------------------------------------

where dist_min=>'$distanza1' and dist_max<='$distanza2'

questo lo fa automaticamente perche' li trova tutti e due e li accoda nella variabile $where