Ver Mensaje Individual
  #12 (permalink)  
Antiguo 11/09/2015, 11:26
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Insertar código PHP dentro de una consulta MySQL

Cita:
Iniciado por dardo123 Ver Mensaje
Porque tendría que hacer miles de comprobaciones de todas las combinatorias mediante if de todos los campos, ya que el usuario puede llenar los input al azar (dependiendo de lo que quiere consultar)
Como ya habrás notado a través de las dos ultimas soluciones propuestas (que en realidad son lo mismo), estás completamente errado al suponer que debes hacer todas las combinatorias de condiciones. Sólo necesitas agregar dinamicamente una condición adicional por cada parámetro que llega.
Infortunadamente no existe otro camino: Si tienes N parametros posibles, y quieres consultar sólo por los que se ingresen, pues tendrás que verificar uno por uno cuales entraron y sólo poner lo necesario para ESE.
Todos los sofwares que conoces usan la misma lógica.

La unica otra alternativa práctica se da si y sólo si se trata de texto, o se va a comparar como texto. En ese caso puedes crear un indice FULLTEXT sobre todas las columnas que se pueden consultar, y usar MATCH() AGAINST() en la query.
Pero eso tiene ciertas condiciones, como por ejemplo, no sirve para palabras de menos de cinco caracteres, y no permite buscar patrones, solo palabras.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)