Ver Mensaje Individual
  #8 (permalink)  
Antiguo 11/09/2009, 17:52
Hildegaard
 
Fecha de Ingreso: diciembre-2007
Mensajes: 131
Antigüedad: 16 años, 4 meses
Puntos: 6
Respuesta: Mejor forma para un sistema de busqueda

LIKE funciona de la siguiente manera:


Código PHP:
SELECT FROM tabla WHERE nombres LIKE '%ju%'nombres LIKE %erto%, etc 

En mi codigo lo que hago es generar un array likes[] con varios valores:

Código PHP:
$likes[0] = "columna_a_buscar LIKE '%mi%'";
$likes[1] = "columna_a_buscar LIKE '%primera%'";
$likes[2] = "columna_a_buscar LIKE '%busqueda%'"
Luego lo que hago es usar la funcion implode para unir todos los valores del array $likes usando el 'pegamento' ", " (una coma).

Código PHP:
implode(", "$likes);
// esto da como resultado
// columna_a_buscar LIKE '%mi%', columna_a_buscar LIKE '%primera%', columna_a_buscar LIKE '%busqueda%' 
Si luego ese string donde tengo todos los LIKE bien ordenados, le agrego el 'SELECT * FROM tabla WHERE', tenemos una SQL Query bien planteada que podemos usar para retirar resultados.


Creo que entenderias mejor mi codigo si leyeras sobre las funciones implode() y explode() del sitio php.net