Foros del Web » Programando para Internet » PHP »

Listado de resultados con filtros

Estas en el tema de Listado de resultados con filtros en el foro de PHP en Foros del Web. Hola a todos, he estado buscando por internet pero no encuentro nada parecido a lo que quiero hacer. Tengo un index.php que me muestra todas ...
  #1 (permalink)  
Antiguo 28/06/2011, 04:00
Avatar de Jota_sk  
Fecha de Ingreso: octubre-2008
Mensajes: 188
Antigüedad: 15 años, 6 meses
Puntos: 0
Listado de resultados con filtros

Hola a todos, he estado buscando por internet pero no encuentro nada parecido a lo que quiero hacer. Tengo un index.php que me muestra todas las consultas de una tabla php. Pues lo que quiero es que arriba haya un campo para restringir los resultados, por ejemplo que solo aparezcan los resultados con un valor, los resultados con una fecha determinada, etc. Pero claro si pulso dos campos (por ejemplo el de la fecha y el de el determinado valor) deberá mostrarme los resultados con esas dos condiciones.

Habia pensado hacer un if con cada condicion, pero seria un codigo bastante largo y un poco tonto porque seguro que hay una manera mejor de hacerlo.

Todo esto lo quiero implementar con ajax, para que no se tenga que recargar la pagina. Me podeis orientar mas o menos?

Gracias
  #2 (permalink)  
Antiguo 28/06/2011, 07:11
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: Listado de resultados con filtros

Cita:
Habia pensado hacer un if con cada condicion, pero seria un codigo bastante largo y un poco tonto porque seguro que hay una manera mejor de hacerlo.
No, no es tonto. Es lo que se hace habitualmente.

Si lo vas a hacer con ajax, pues es lo mismo. En lado servidor, te fijas que filtros seleccionó/completó el usuario usando una serie de condicionales, y en base a esos modificas tu consulta sql.
  #3 (permalink)  
Antiguo 28/06/2011, 08:30
Avatar de Jota_sk  
Fecha de Ingreso: octubre-2008
Mensajes: 188
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Listado de resultados con filtros

Entonces imaginate que el filtro estan las siguientes opciones

Mayor de edad - vehiculo propio - casa propia - bachiller

(por poner un ejemplo)

que hago un if tipo esto
Código PHP:
if ($col1 == 'mayor de edad'){
    if (
$col2 == 'mvehiculo propio'){
           
$sql 'select * from tabla where vehiculo="propio" AND edad="mayor"';
            break;
            }}else{
        
$sql 'select * from tabla where edad="mayor"';}; 

y asi abarcando todos los campos de flitros? haciendo todas las opciones? no habira una forma mas facil y no tan compleja de hacerla¿?
  #4 (permalink)  
Antiguo 28/06/2011, 10:08
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: Listado de resultados con filtros

Vos tenes que tener una consulta basica. Los filtros se van a sumar sobretodo después del WHERE. No es necesario reescribir el SELECT una y otra vez a menos que los filtros realmente vuelvan compleja la consulta (agregando condiciones aparte del where, por ejemplo).
Código PHP:
Ver original
  1. $consulta = " select * from tabla where edad='mayor' ";
  2. $cond = "";
  3.  
  4. if ( $col2 == 'mvehiculo propio' )
  5.   $cond.= " AND vehiculo='propio' ";
  6. ...

Etiquetas: filtros, listado, resultados
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 13:13.