Parece que te tengo que seguir molestando...
He hecho la parte sencilla que es en la cual el desplegable del precio entra a la base de datos dentro de la tabla rango_precios y hace visible el precio máximo en el desplegable. Pero he intendado amoldar los que me has dicho para extraer los datos "desde" y "hasta" con una query SQL:
Código PHP:
$query = 'SELECT desde, hasta FROM precio WHERE id='.$idPrecio;
Extraer sólo las que tengan un precio dentro de los márgenes:
Código PHP:
$queryViviendas = 'SELECT * FROM vivienda WHERE precio>='.$desde.' AND precio<'.$hasta.' ORDER BY precio ASC';
Y no consigo amoldar estos códigos al mio general que es este:
Código PHP:
<?php
$conexion = mysql_connect('localhost', '', '');
mysql_select_db('');
?>
<html>
<head>
<title>Reporte de Propiedades</title>
</head>
<body>
<h1>Búsqueda de Propiedades</h1>
<form name="form1" method="post" action="Busqueda3.php">
<p>
<label>Tipo de vivienda:<br />
<select name="tipovivienda" id="tipovivienda">
<option value="0">--Escoja tipo alquiler--</option>
<?php
$tablavivienda = mysql_query("SELECT * FROM vivienda ORDER BY id ASC"); // Seleccionamos las ciudades de la tabla ciudades
while ($registrovivienda = mysql_fetch_array($tablavivienda)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
<option value="<?php echo $registrovivienda['id']; ?>"><?php echo $registrovivienda['tipo']; ?></option>
<?php
} // termina la zona de repeticion
mysql_free_result($tablavivienda); // se libera la memoria usada por la tabla
?>
</select>
<br>
</label>
<label>Ciudad:<br />
<select name="ciudad" id="ciudad">
<option value="0">---Escoja la ciudad---</option>
<?php
$tablaciudades = mysql_query("SELECT * FROM ciudades ORDER BY nombre ASC"); // Seleccionamos las ciudades de la tabla ciudades
while ($registrociudad = mysql_fetch_array($tablaciudades)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
<option value="<?php echo $registrociudad['id']; ?>"><?php echo $registrociudad['nombre']; ?></option>
<?php
} // termina la zona de repeticion
mysql_free_result($tablaciudades); // se libera la memoria usada por la tabla
?>
</select>
<br>
<label for="precio">Precio máximo</label>
<br/>
<select name="precio" id="precio">
<option value="0">--Cualquier precio--</option>
<?php
$tablaprecios = mysql_query("SELECT * FROM precios ORDER BY id ASC"); // Seleccionamos los precios de la tabla precio
while ($registroprecio = mysql_fetch_array($tablaprecios)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada precio en la tabla
?>
<option value="<?php echo $registroprecio['id']; ?>"><?php echo $registroprecio['texto']; ?></option>
<?php
} // termina la zona de repeticion
mysql_free_result($tablaprecios); // se libera la memoria usada por la tabla
?>
</select>
<br>
</label>
<input type="submit" name="cmdBuscar" id="cmdBuscar" value="IR">
</p>
</form>
<table border="1">
<tr>
<td>Referencia</td>
<td>Foto</td>
<td>Tipo Vivienda</td>
<td>Ciudad</td>
<td>Población</td>
<td>Precio</td>
<td>Descripción</td>
</tr>
<?php
$sql = "SELECT propiedades.*, ciudades.*, vivienda.* FROM propiedades, ciudades, vivienda WHERE propiedades.idciudad = ciudades.id && propiedades.idvivienda = vivienda.id ";
if (isset($_POST['tipovivienda'])) {
$sql .= " AND propiedades.idvivienda = '" . ($_POST['tipovivienda']) . "'";
if (intval($_POST['ciudad']) > 0) {
$sql .= " AND propiedades.idciudad = '" . intval($_POST['ciudad']) . "'";
}
}
$sql .= " ORDER BY referencia ASC";
$tabla = mysql_query($sql);
while ($registro = mysql_fetch_array($tabla)) {
?>
<tr>
<td><?php echo $registro['referencia']; ?></td>
<td><img src="ver.php?referencia=<?php echo $registro['referencia']; ?>" width="200" height="150" alt="" /></td>
<td><?php echo $registro['tipo']; ?></td>
<td><?php echo $registro['nombre']; ?></td>
<td><?php echo $registro['poblacion']; ?></td>
<td><?php echo $registro['precio']; ?></td>
<td><?php echo $registro['descripcion']; ?></td>
</tr>
<?php
}
mysql_free_result($tabla);
mysql_close($conexion);
?>
</table>
</body>
</html>
Si encuantras el porque puede ser o como debería hacrlo te estaría nuevamente muy agradecido.
Saludos!