El error que te da es porque la query no devuelve resultados; es decir, no hay ningún registro que cumpla todas las condiciones que se han introducido en el formulario.
La función mysql_query($sql) devuelve FALSE si no encuentra ningún registro para la sentencia SQL enviada, por lo tanto, antes de usar el resultado, debes comprobar que sí ha devuelto resultados con un simple if:
Código PHP:
$tabla = mysql_query($sql);
if ($tabla) // En el caso de que $tabla no sea FALSE (hay registros)
{
while ($registro = mysql_fetch_array($tabla)) {
// Aquí va el código para mostrar los datos obtenidos en la query
...
}
}
else // $tabla = FALSE, por lo que no ha encontrado registros
{
echo('No se han encontrado inmuebles que cumplan los criterios seleccionados...');
}
Para saber la query que se está ejecutando, te recomiendo que hagas un echo justo antes de llamar a mysql_query($sql)
Código PHP:
echo($sql);
$tabla = mysql_query($sql);
...
Con esto podrás comprobar que la query es correcta; en este caso, asegúrate de que en la base de datos hay registros que cumplan los criterios seleccionados.
Salu2,
Carlos.