Foros del Web » Programando para Internet » PHP »

problemilla busqueda avanzada.

Estas en el tema de problemilla busqueda avanzada. en el foro de PHP en Foros del Web. buenas estoy haciendo una busqueda avanzada para mi pagina web, tiene 4 campos por los que se busca, por nombre por categoria por precio minimo ...
  #1 (permalink)  
Antiguo 10/02/2011, 05:02
 
Fecha de Ingreso: febrero-2011
Mensajes: 1
Antigüedad: 13 años, 2 meses
Puntos: 0
problemilla busqueda avanzada.

buenas estoy haciendo una busqueda avanzada para mi pagina web, tiene 4 campos por los que se busca, por nombre por categoria por precio minimo y por precio maximo.
la cuestion es que tengo un problema en uno de los if, es en el que combino si el nombre y el precio maximo pasan valores que busque por esos dos, la cuestion es que si busco por nombre me lo encuentra y si busco por precio maximo tambien. pero por las dos me da resultados que no deberian de salir. me los da tanto en mi pagina web como en el app server.
os pongo las sentencias que me genera:

si pongo las palabras go en el textbox del nombre:
select * from productos where nombre like '%go%' or descripcion like '%go%'
(esta me va bien)
si pongo 5000 en el precio maximo solo:
select * from productos where precio >=5000
(esta tambien me busca bien)

pero si pongo las dos:
select * from productos where nombre like '%go%' or descripcion like '%go%' and precio >=5000

me salen productos que no entran en ese rango de busqueda es decir me salen los que tienen en el nombre o en la descripcion un go pero el precio es menor o mayor que ese. vamos que el and no me va bien.
alguna sugerencia?
un saludo y gracias

P.D: tras mirarlo varias veces si quito el or de la descripcion si me lo busca bien pero con él no, y claro quiero q me busque la palabra en las dos..

Última edición por forrys; 10/02/2011 a las 06:03
  #2 (permalink)  
Antiguo 10/02/2011, 08:08
Avatar de Kenichi  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 160
Antigüedad: 15 años, 3 meses
Puntos: 6
Respuesta: problemilla busqueda avanzada.

Intenta usar parentesis para separar las condiciones:
Cita:
select * from productos where (nombre like '%go%' or descripcion like '%go%') and (precio >=5000)
__________________
Cansado de tener que hacer webs con doble login, o no entender nada del codigo de phpBB? Usa un sistema de foros simple, usa Linken Foros

Etiquetas: busquedas
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 03:22.