Foros del Web » Programando para Internet » PHP »

Búsqueda con filtros

Estas en el tema de Búsqueda con filtros en el foro de PHP en Foros del Web. Hola gente, estoy realizando una aplicación y necesito hacer unas búsquedas de casos. El tema es que la búsqueda se puede realizar por varios parámetros ...
  #1 (permalink)  
Antiguo 08/04/2009, 06:05
 
Fecha de Ingreso: enero-2009
Mensajes: 38
Antigüedad: 15 años, 3 meses
Puntos: 0
Búsqueda con filtros

Hola gente, estoy realizando una aplicación y necesito hacer unas búsquedas de casos. El tema es que la búsqueda se puede realizar por varios parámetros (fecha de inicio, fecha de fin, responsable, estado, prioridad, etc).
Soy bastante nuevo en php y necesitaría ideas para poder arrancar con esto.
Muchas gracias!!!!
  #2 (permalink)  
Antiguo 08/04/2009, 06:25
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Búsqueda con filtros

Lo que haces es, si X campo no esta vacio entonces agregas eso a la consulta.

Te doy un ejemplo bien rapidito:

Código PHP:
<?php
$consulta 
"SELECT * FROM tabla WHERE";

if(!empty(
$_POST['responsable'])) {
  
$array[] = " responsable = '{$_POST['responsable']}'";
}

if(!empty(
$_POST['estado'])) {
  
$array[] = " estado = '{$_POST['estado']}'";
}

$consulta .= implode(" AND"$array);

//ejecutas la consulta

?>
  #3 (permalink)  
Antiguo 08/04/2009, 06:49
 
Fecha de Ingreso: enero-2009
Mensajes: 38
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Búsqueda con filtros

Gracias Ronruby!!
La verdad que no entiendo muy bien el código que me mandaste, pero creo que la idea viene por ese lado, es decir, validar primero que campos están seleccionados para después ejecutar la consulta.
Igual el tema es un poco mas complejo, me parece, porque no necesariamente todos los filtros son usados.
El código que me mandaste no funcionaría mejor con OR en lugar de AND?
Bueno....sigo renegando con esto.
De nuevo, gracias por el momento!
  #4 (permalink)  
Antiguo 08/04/2009, 06:59
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Búsqueda con filtros

Pues lo que hace es, que dependiendo si un campo u otro esta lleno forma la consulta.
Uso AND porque al aplicar filtros, se quieren los resultados que cumplen TODOS los criterios ya dados, de lo contrario, no tendría mucho caso hacer un filtro si la búsqueda te va a devolver lo que quiera xD.
  #5 (permalink)  
Antiguo 08/04/2009, 07:18
 
Fecha de Ingreso: enero-2009
Mensajes: 38
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Búsqueda con filtros

Tienes razón....funciona con AND!!
Ahora bien...una vez ejecutada la consulta, como podría mostrar los resultados? Además, como puedo recuperar datos para mostrar que se encuentran en otras tablas? Con responsable, estado y prioridad recupero los id de la tabla casos, pero los datos que me interesa mostrar se encuentran en sus respectivas tablas.
  #6 (permalink)  
Antiguo 08/04/2009, 07:32
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Búsqueda con filtros

Para mostrar los datos usas mysql_query() para ejecutar la consulta y mysql_fetch_array() para traer los datos en un array.

http://www.php.net/manual/es/functio...etch-array.php

Con respecto a tu segunda duda, existe algo llamado JOINs en MySQL.
http://www.programacionweb.net/artic...iculo/?num=467
  #7 (permalink)  
Antiguo 14/04/2009, 10:33
 
Fecha de Ingreso: enero-2009
Mensajes: 38
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Búsqueda con filtros

Bueno gente...sigo renegando con mi búsqueda.
Ahora mi duda es la siguiente: tengo 6 filtros posibles aprox. para la búsqueda, y además la mayoría de ellos se pueden combinar. Mi pregunta es como puedo hacer para validar eso? Por ejemplo, si quiero ver los casos de X cliente, con estado Abierto y de prioridad Alta es una validacion, pero las combinaciones pueden ser muchas...
Espero haber sido claro con lo que necesito!!
Escucho ideas o ayuda de como resolverlo!
Muchas gracias...
  #8 (permalink)  
Antiguo 16/04/2009, 06:04
 
Fecha de Ingreso: enero-2009
Mensajes: 38
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Búsqueda con filtros

Y...nadie me puede ayudar?
Por favor si alguien tiene una idea se lo agradecería mucho!!
Hace rato que estoy renegando con esto y no lo puedo resolver solo.
Gracias...
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 08:20.