Foros del Web » Programando para Internet » ASP Clásico »

Buscador mejorado, ¿con acentos?

Estas en el tema de Buscador mejorado, ¿con acentos? en el foro de ASP Clásico en Foros del Web. Hola, estoy usando de hace tiempo el buscador simple asp de desarrolloweb sin problemas, incluso cuando le añadí el código "mejorado" para buscar más de ...
  #1 (permalink)  
Antiguo 06/11/2006, 05:27
 
Fecha de Ingreso: junio-2002
Mensajes: 8
Antigüedad: 22 años, 10 meses
Puntos: 0
Buscador mejorado, ¿con acentos?

Hola,

estoy usando de hace tiempo el buscador simple asp de desarrolloweb sin problemas, incluso cuando le añadí el código "mejorado" para buscar más de una palabra me ha funcionado genial.

El problema es que no logro implementar una solución para que busque las palabras sin tener en cuenta si están acentuadas o no. He visto muchas soluciones para esto de los acentos, pero no me han funcionado en este buscador, en otros más simples que constan de una conexión a bbdd y una llamada sql me han ido, pero en el mejorado no.
  #2 (permalink)  
Antiguo 06/11/2006, 05:43
Avatar de 3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 21 años, 5 meses
Puntos: 144
Con una funcioncilla que hay por ahí (no recuerdo si en las FAQ, o donde)...
Código:
Function Acentos(texto)
 Dim ComponerTexto
 For x = 1 To Len(texto)
  ComponerTexto = Mid(texto, x, 1)
  Select Case ComponerTexto
   Case "a", "à", "á", "À", "Á"
    Acentos = Acentos & "[aàáÀÁ]"
   Case "e", "é", "è", "È", "É"
    Acentos = Acentos & "[eéèÈÉ]"
   Case "i", "ì", "í", "Ì", "Í"
    Acentos = Acentos & "[iìíÌÍ]"
   Case "o", "ò", "ó", "Ò", "Ó"
    Acentos = Acentos & "[oòóÒÓ]"
   Case "u", "ù", "ú", "Ù", "Ú"
    Acentos = Acentos & "[uùúÙÚ]"
   Case Else
    Acentos = Acentos & ComponerTexto
  End Select
 Next
End Function
Y luego...
Código:
'Suponiendo que pasemos los datos del formulario, por GET...
titulo = request.querystring("titulo")
'La consulta sería más o menos esta...
SQL = "SELECT * FROM tu_tabla WHERE campo_titulo LIKE '%" & Acentos(titulo) & "%' ORDER BY id DESC"
Salu2
  #3 (permalink)  
Antiguo 06/11/2006, 07:13
 
Fecha de Ingreso: junio-2002
Mensajes: 8
Antigüedad: 22 años, 10 meses
Puntos: 0
Justo ahora te iba a decir que gracias pero ya habia probado esa opción cuando he encontrado la manera de hacerlo.

El problema es que con el buscador que uso, la consulta sql era asi:

Código:
   generaSql="Select * from " & tabla & " Where " & Sacar(cadena,campos)"
El problema es que parte de la consulta se genera en una funcion aparte (sacar).

Me ha funcionado insertando tu función dentro.

Código:
     generaSql="Select * from " & tabla & " Where " & Sacar(acentos(cadena),campos) "
Muchas gracias!
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 20:59.