Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/12/2005, 20:09
Avatar de speedy
speedy
 
Fecha de Ingreso: octubre-2004
Ubicación: México
Mensajes: 127
Antigüedad: 20 años, 6 meses
Puntos: 0
Pregunta un buscador potente, pero solo me busca la primer palabra

Hola a todos bueno antes que otra cosa feliz navidad y feliz año nuevo, ok.
Estoy depurando un buscador que tengo ya la llevo de gane y ya esta en mi aplicacion operando, pero tiene un detalle pongo por ejemplo.

jamon a

y solo me busca la palabra jamon

si le pongo o no palabras mas adelante no les hace caso, solo busca la primer palabra, si le pongo por ejemplo

a jamon

me busca todo lo que tenga la letra a ya no le importa lo demas a la derecha.

¿Como puedo colocar el codigo para que me jala todos los registros de acuerdo a las palabras que le ponga? ejemplo:

jamon pavo

para que me jala todos los registros que tengan jamon pero solo los que sean de pavo...

Les pongo el codigo que tengo, muchas gracias por sus comentarios.
Código PHP:
textStr trim(Request.QueryString("s")) ‘lo que se va a buscar
Dim pos1
 Dim pos2
 Dim wordLen
 x 
1
 pos1 
1
 pos2 
instr(1,textSTR,SeperatorSTR)
 if 
pos2 0 then pos2 len(textstr): pos1 0
 Redim Preserve ArraySTR
(x)
 
wordLen pos2 pos1
 ArraySTR
(0) = mid(textstr,1wordLen)
 
 While 
pos1 <> 
  pos1 
pos2
  pos2 
instr(pos2+1,textSTR,SeperatorSTR)
  if 
pos2 0 then 
   
if pos1 0 then 
    pos2 
len(textstr) + 1
   end 
if
  
end if 
 
  if 
pos2 <> 0 then 
   
if pos1 <> 0 then 
    Redim Preserve ArraySTR
(x)
    
wordLen pos2 pos1 1
    ArraySTR
(x) = mid(textstr,pos1 1,wordLen)
    
x=x+1
   End 
if
  
End if
  if 
pos2 => len(textstrthen pos1 

 Wend

 WordCount 
x
' strSQL = "Select TOP 350 * from Anuncios where ComentariosAnuncio like '%" & ArraySTR(0) & "%'"
 strSQL = "Select * from Anuncios where Metapalabras like '
%" & ArraySTR(0) & "%' or NombreNegocio like '%" & ArraySTR(0) & "%'  or Descripcion like '%" & ArraySTR(0) & "%' ORDER BY ServicioContratado DESC, Contador DESC, NombreNegocio"
 
 for x = 0 to Wordcount - 1
  if  lcase(ArraySTR(x)) <> "and" then 
   if x > 0 then 
    strSQL = StrSQL & " AND Descripcion like '
%" & ArraySTR(x) & "%"
   end if
  end if
 next

 strSQL = StrSQL & "
;"
end if 
Saludos.
__________________
Saludos :cool: y Suerte :arriba:
valle del mezquital en el Estado de Hidalgo