Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Consulta de Buscador

Estas en el tema de Consulta de Buscador en el foro de Mysql en Foros del Web. Hola tengo un buscador avanzado con php, y el problema que tengo es que no todos los campos son obligatorios y entonces ahi tengo el ...
  #1 (permalink)  
Antiguo 15/10/2013, 06:32
 
Fecha de Ingreso: enero-2012
Mensajes: 224
Antigüedad: 12 años, 3 meses
Puntos: 1
Consulta de Buscador

Hola tengo un buscador avanzado con php, y el problema que tengo es que no todos los campos son obligatorios y entonces ahi tengo el problema

Código:
SELECT * FROM curriculums WHERE (numero LIKE '') and ( TIMESTAMPDIFF(YEAR, fechanacdia, CURDATE()) BETWEEN '' and '') and (sexo = '') and (localidad LIKE '%$Burzaco%')
y me devuelve 0 resultados


que puedo hacer para que cuando no tiene datos no los tome como valores de busqueda
  #2 (permalink)  
Antiguo 15/10/2013, 07:38
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Consulta de Buscador

Hola mktalternativa:

Este tipo de problemas se ha tratado infinidad de veces en este foro y la respuesta no corresponde a SQL, sino que es un tema de programación, y por lo tanto no debe tratarse aquí...

Si alguno de los campos NO ES OBLIGATORIO, entonces NO DEBE APARECER EN EL WHERE DE LA CONSULTA... al momento de formar tu consulta simplemente agregas los filtros que en realidad deban aparecer. En Pseudocódigo sería algo asi:

Código:
CONSULTA= "SELECT * FROM curriculums WHERE 1=1"
SI parametro_numero NO ES VACIO ENTONCES
   CONSULTA = CONSULTA + " AND numero = " + parametro_numero

SI parametro_sexo NO ES VACIO ENTONCES
   CONSULTA = CONSULTA + " AND SEXO = " + parametro_sexo

...
...
Así para cada uno de los campos. Insisto, esto es un tema de programación, no de SQL... si estás utilizando algún lenguaje de programación, puedes postear en los foros correspondientes tu pregunta, para que los expertos te ayuden si es que no puedes resolver tu problema... Si lo estás haciendo con SP o sentencias preparadas en MySQL, postea lo que has intentado hacer y con gusto te ayudamos a corregir la sentencia.

Saludos
Leo.

Etiquetas: buscador, campo, php, select
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 01:28.