Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: ZonaHacker en 11 Julio 2010, 07:57 am



Título: Formulario de busqueda
Publicado por: ZonaHacker en 11 Julio 2010, 07:57 am
Hola gente, ¿Como estan?
Bueno, el motivo de este tema es que tengo un problemita con un formulario de busqueda en php.
Estoy haciendo una web para una inmobiliaria y necesita un formulario para buscar las casas por ciudad, barrio, habitacion y condicion.

Lo que yo pude hacer es un buscador pero que busca cualquier palabra. Aca les dejo la foto:

(http://i31.tinypic.com/2nhosup.jpg)

y el codigo:

 //inicializo el criterio y recibo cualquier cadena que se desee buscar
        $criterio = "";
        if ($_GET["criterio"]!=""){
$txt_criterio = $_GET["criterio"];
$criterio = " where co_id like '%" . $txt_criterio . "%' or co_nombre like '%" . $txt_criterio . "%' or co_pais like '%" . $txt_criterio . "%'";
}


$sql="SELECT * FROM tpv.comercios ".$criterio;
$res=mysql_query($sql);
$numeroRegistros=mysql_num_rows($res);
if($numeroRegistros<=0)
{
echo "<div align='center'>";
echo "<font face='verdana' size='-2'>No se encontraron resultados</font>";
echo "</div>";
}else
{



Yo necesitaria modificar ese codigo para qe las personas que realizen la busqueda seleccionen de una lista/menu la ciudad, el barrio, las habitaciones y la condicion, para que sea mas exacta. Algo asi:

(http://i32.tinypic.com/4fydcy.jpg)

Supongo que es algo secillo. Saludos amigos! Desde ya gracias!


Título: Re: Formulario de busqueda
Publicado por: academo en 11 Julio 2010, 20:43 pm
Lo puedes hacer de dos formas dependiendo de como tengas ordenadas esas provincias y localidades, si estan en una tabla aparte podrias cargar todos los datos en un select, ejemplo:

$sql="SELECT * FROM localidades";
$res=mysql_query($res);
echo "<select name='localidad' >";
while($con=mysql_fetch_array($res)){
$local=$con["localidad_id"];
$nombre=$con["nombre"];
echo "<option value='$local'>$nombre</option>";
}
echo "</select>";

Algo asi con las demas tablas, en caso que no sea asi, puedes hacer un formulario a mano en HTML con todas las provincias, localidades, areas barros... etc..

y en tu codigo anterior simplemente tomas todas las palabras claves que lleguen y las combinas en una.

   
$local = $_GET["localidad"];
$pais= $_GET["otra"];
$barrio= $_GET["unmas"];

y luego armas la consulta con cada campo, asi como lo que pusiste pero con cada variable respectiva.