Ver Mensaje Individual
  #5 (permalink)  
Antiguo 15/02/2012, 01:52
Avatar de xarmagedonx
xarmagedonx
 
Fecha de Ingreso: marzo-2009
Mensajes: 360
Antigüedad: 15 años, 2 meses
Puntos: 29
Respuesta: Error con like y php

Ahh, gracias, no sabía que se podía hacer eso, lo de artículos y preposiciones es fácil, puedo hacerlo con un if y la funcion strlen().

Ahora veo que el problema era mas de mysql que de php...

Disculpa, pero como debería hacerce la consulta con macht against, no se si es por la hora jajaj, pero no me está funcionando, probé de la siguiente manera:

Código PHP:
Ver original
  1. $palabras=explode(' ',$frase);  
  2. $condicion='';  
  3. foreach ($palabras as $palabra) {  
  4.   if ($condicion!='') $condicion.=' OR ';  
  5.   $condicion.="(webDescripcion)";  
  6. }
  7. SELECT distinct uDR.t as webTitulo, uDR.d as webDescripcion, uDR.w as weburl, uDR.k as webkeywords  
  8. from
  9. ((select s1.webTitulo as t, s1.webDescripcion as d, s1.weburl as w, s1.webkeywords as k, 1 as priority from webs s1 MATCH $condicion AND (s1.webTitulo) AGAINST (like '%$frase%'))
  10. union
  11. (select s2.webTitulo as t, s2.webDescripcion as d, s2.weburl as w, s2.webkeywords as k, 2 as priority from webs s2 MATCH $condicion1 AND (s2.webkeywords) AGAINST (like '%$frase%'))
  12. union
  13. (select s3.webTitulo as t, s3.webDescripcion as d, s3.weburl as w, s3.webkeywords as k, 3 as priority from webs s3 MATCH $condicion2 AND (s3.webDescripcion) AGAINST (like '%$frase%'))) uDR
  14. order by uDR.priority