Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/11/2007, 18:56
iarrieta
 
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 278
Antigüedad: 21 años, 5 meses
Puntos: 0
Ayuda para terminar buscador avanzado

Hola

Despues de muchos dolores de cabeza logre armar un buscador avanzado con 7 filtros de busqueda; toma los filtros de un form con selects y hace consulta a base de datos a una tabla.

Los campos son algo asi como zona, estrato, negocio, inmueble, condicion, precio_min y precio_max (campos select del form y campos en la tabla propiedades en la DB)

El asunto es que al seleccionar en el form por ejemplo zona = Norte, perfecto, me muestra en los resultados el o los inmuebles ubicados en la zona Norte. Si selecciono en el form por ejemplo negocio = Venta, perfecto, me arroja los resultados de todos los inmuebles que esten en venta.

Los problemas son los siguientes:

1.- Dentro de los select del form, ademas de los campos correspondientes tengo uno que dice Todo... que valor debe tener para que si lo selecciono me muestre Todo? Explico
Código PHP:
<select name="zona" class="select" id="zona">
                          <option value="-1" selected="selected">Todas</option>
                          <option value="Null">-------------------</option>
                          <?php
                           $sql 
mysql_query("SELECT * FROM zona ORDER BY nombre");
                           while (
$row mysql_fetch_array($sql)) {
                           
?>
                          <option value="<?php echo $row['nombre']; ?>"><?php echo $row['nombre']; ?></option>
                         <?php
                           
}
                           
mysql_free_result($sql);
                           
?>
                        </select>
En donde dice
Código HTML:
<option value="-1" selected="selected">Todas</option> 
Cual seria el valor en vez de -1 para que muestre, en este caso, inmuebles en cualquiera de las zonas?

--------------------------------------

2.- Como indique arriba, si selecciono por ejemplo zona = Norte y en la BD hay un inmueble en la zona Norte, me muestra el o los registros PERO si selecciono zona = Norte y selecciono inmueble = Casa, me muestra entonces lo que coincida con la zona y tambien con el inmueble, ES DECIR... me muestra por ejemplo un apartamento en el Norte y 2 casas en el Sur.

Lo que trato de decir es que cada opcion o select del form funcionan perfecto por separado (si selecciono solo una de ellas) pero si combino varios select del form no da los resultados concordantes. Con el ejemplo anterior (zona = Norte e inmueble = Casa) deberia SOLO mostrar LAS CASAS EN EL NORTE, y no todas las casas y todo lo que hay en la zona norte...

-------------------------------------

Ya con esto termino el buscador. Si puedieran colaborarme lo agradeceria mucho, ya que haber llegado a este punto de funcionamiento fue para mi bastante tomando en cuenta mis basicos conocimientos de PHP. Ya de aqui no tengo como seguir...