Foros del Web » Programando para Internet » PHP »

Filtro de busqueda

Estas en el tema de Filtro de busqueda en el foro de PHP en Foros del Web. Saludos amigos mi problema es el siguiente. Me han encomendado realizar una pagina web de una Inmobiliaria, en ella quieren que valla una opcion de ...
  #1 (permalink)  
Antiguo 23/02/2014, 10:57
 
Fecha de Ingreso: febrero-2014
Mensajes: 1
Antigüedad: 10 años, 9 meses
Puntos: 0
Exclamación Filtro de busqueda

Saludos amigos mi problema es el siguiente.

Me han encomendado realizar una pagina web de una Inmobiliaria, en ella quieren que valla una opcion de busqueda: tipo de propiedad, precio, ubicacion, precio mas bajo y precio mas alto. alquiler o compra,etc.

similar a esta http://www.buscomicasa.cr , como pueden observar ustedes seleccionan el tipo de busqueda que desean y al dar clic en buscar automaticamente les genera unicamente la informacion que ustedes han escogido.

soy novato en la opcion de buscadores asi que no tengo ni idea de como se puede hace esto proceso.

Como podria hacer un tipo de busqueda personalizada con filtro similar a esto, conocen algun tutorial, similar a este?...

gracias
  #2 (permalink)  
Antiguo 23/02/2014, 14:10
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 12 años, 7 meses
Puntos: 320
Respuesta: Filtro de busqueda

Lo que estas buscando se llama WHERE Clause el buscador no es mas que un simple formulario (tan adornado como te guste) que envia parametros a un script php que los recibe, valida, mete en un sql en la clausula where la ejecuta y retorna los resultados.

Piensa esto, si el tipo te dijera: "Quiero un listado de todas la propiedades, sin buscador, que liste todo lo que tengo" ¿Tendrias algun problema en hacerlo? Si la respuesta es si, aun no estas a la altura de desarrollar una web de este tipo, te falta mucho por estudiar (o quizas no tanto ) . Si la respuesta es no, entonces implementar un buscador no tendra ninguna dificultad para ti.

Imaginemos que tu tabla de propiedades tiene estos campos:

nombre
tipo: (1=alquiler, 2=venta)
canton:(id_canton)
precio

y ademas tienes las otras dos:
cantones:
id_canton
id_provincia
descripcion

provincias:
id_provincia
descripcion

y quieres hacer el mismo filtro que tienes en esa web:

Código PHP:
Ver original
  1. $sql = 'SELECT propiedades.nombre FROM propiedades p INNER JOIN cantones c ON p.id_canton=c.id_canton INNER JOIN provincias pr ON pr.id_provincia=c.id_provincia WHERE 1 '.($_POST['tipo'] ? ' AND p .tipo ='.$_POST['tipo'] : '').($_POST['canton'] ? 'AND p .id_canton ='.$_POST['canton'] : ($_POST['provincia'] ? 'AND c id_provincia ='.$_POST['provncia'] : '')).($_POST['precio_desde'] ? 'AND p .precio >='.$_POST['precio_desde'] : '').($_POST['precio_hasta'] ? 'AND p precio ='.$_POST['precio_hasta'] : '');

Seria algo masomenos asi, lo resuelve todo mysql, con php unicamente debes validar los parametros.
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios

Etiquetas: busqueda, busquedas, css, css+dinamicos, filtros, html, html+javascript, mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:59.