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

acentos

Estas en el tema de acentos en el foro de ASP Clásico en Foros del Web. Siempre el huevo tiene que tener un pelo!!!! Andaba barbaro, mejor dicho, mi buscador anda barbaro pero :negar: no tan barbaro.... Que es lo que ...
  #1 (permalink)  
Antiguo 27/03/2003, 14:13
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 22 años, 3 meses
Puntos: 0
acentos

Siempre el huevo tiene que tener un pelo!!!!

Andaba barbaro, mejor dicho, mi buscador anda barbaro
pero :negar: no tan barbaro....

Que es lo que pasa, cuando busco cualquier aparición, la encuentra perfecto, pero si tiene acento :-p no la encuentra.

por ejemplo si la raza en la BD es = "común", no encuentra coincidencias..

' RAZA = común : esto es lo que ingreso en el form

este es el code

RAZA = UCASE(REQUEST.FORM("RAZA"))
strsql = strsql & "and UPPER(RAZA) LIKE '%"&RAZA&"%'"



Pd: toy estrenando emoticones...


grachie de antemani....



salute...

contesten, no se pongan la gorra jeje
__________________
Juan Pablo
  #2 (permalink)  
Antiguo 27/03/2003, 20:10
Avatar de Mickel  
Fecha de Ingreso: mayo-2002
Ubicación: Lima, Peru
Mensajes: 4.619
Antigüedad: 22 años, 10 meses
Puntos: 7
Que base de datos usas?
__________________
No tengo firma ahora... :(
  #3 (permalink)  
Antiguo 28/03/2003, 06:55
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 22 años, 3 meses
Puntos: 0
Gracias por contestar, estoy accediendo a interbase.
__________________
Juan Pablo
  #4 (permalink)  
Antiguo 28/03/2003, 07:01
Mai
 
Fecha de Ingreso: febrero-2003
Mensajes: 38
Antigüedad: 22 años, 1 mes
Puntos: 0
yo guardaria los datos sin acentos y luego a la hora de hacer la busqueda haria un replace, de echo es lo que hacen algunos buscadores profesionales, siempre te obliga ha hacer un replace, de los acentos.
Otra cosa, mirar los regional settings de la maquina y también de la BBDD. Si no están configurados para EE.UU o en anglosajón no acepta los acentos.
Espero que te sirva el rollo que acabo de soltar.
Mai
  #5 (permalink)  
Antiguo 28/03/2003, 07:02
Mai
 
Fecha de Ingreso: febrero-2003
Mensajes: 38
Antigüedad: 22 años, 1 mes
Puntos: 0
Es malo enrollarse tanto, perdon, he querido decir que si estan configurados para USA entonces no coge bien los acentos. Ponlos en español.
Mai
  #6 (permalink)  
Antiguo 28/03/2003, 07:56
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 22 años, 3 meses
Puntos: 0
gracias may, el tema del replace es medio complicado, porque la base de datos ya está armada, me la dieron así y tiene miles de registros ya cargados con acentos. :negar:

en cuanto a la otra opción, ahora la voy a probar, aunque cuando busco por otros criterios, me muestra sin ningún problema los campos acentuados

igualmente, yo no quiero que me encuentre "común" en la base de datos si el usuario ingresó "comun", sí, si la escribe con acento en el formulario .

En teoría si se ingresa la palabra tal cual con el acento, no debería funcionar?

Alguna otra sugerencia?

saludos...
__________________
Juan Pablo
  #7 (permalink)  
Antiguo 28/03/2003, 08:17
 
Fecha de Ingreso: mayo-2002
Mensajes: 197
Antigüedad: 22 años, 10 meses
Puntos: 0
Por aki tengo guardado esto que a mi me fue divino:


==============================================

Hola,
Creo que esta función te puede servir:

<%
Function AccIns(Str)
Dim CurLtr
For x = 1 To Len(Str)
CurLtr = Mid(Str, x, 1)
Select Case CurLtr
Case "a", "à", "á"
AccIns = AccIns & "[aàá]"
Case "e", "é", "è"
AccIns = AccIns & "[eéè]"
Case "i", "ì", "í"
AccIns = AccIns & "[iìí]"
Case "o", "ò", "ó"
AccIns = AccIns & "[oòó]"
Case "u", "ù", "ú"
AccIns = AccIns & "[uùú]"
Case "n", "ñ", "Ñ"
AccIns = AccIns & "[nñÑ]"
Case Else
AccIns = AccIns & CurLtr
End Select
Next
End Function
%>

Asignas la variable
strlocalidad = Request.form("localidad")

en la consulta llamas a la función:
SQL = "SELECT * FROM Localidades WHERE Localidad LIKE '%" & AccIns(strlocalidad) & "%'"

quedándote la consulta
SELECT * FROM Localidades WHERE Localidad LIKE 'Esp[aàá][nñÑ][aàá]'

De esta manera ya no te tienes que preocupar por el tema de las tildes.

Un saludo!!

[email protected]

Por jgg en "forosdelweb"

==============================================

Espero que te sirva, un saludo.
  #8 (permalink)  
Antiguo 28/03/2003, 08:30
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 22 años, 3 meses
Puntos: 0
Gracias choroy... muy buena la función

Es bueno saberlo, pero creo que ese no es my problema

asi queda formado mi sql:

select * from DBREGTO WHERE UPPER(RAZA) LIKE '%COMÚN%'

y en el código esta así:

strsql = strsql & "and UPPER(RAZA) LIKE '%"&RAZA&"%'"


upper(raza) = COMÚN

Y LA VARIABLE RAZA = COMÚN

osea que no tengo un problema de conversión, tu función esta buena para que cuando el cliente ingresa sin acento la encuentre igual, pero este no es el caso.

Muy buen aporte de todas maneras.


saludos.
__________________
Juan Pablo

Última edición por tarlipes; 09/04/2003 a las 12:04
  #9 (permalink)  
Antiguo 28/03/2003, 08:40
 
Fecha de Ingreso: mayo-2002
Mensajes: 197
Antigüedad: 22 años, 10 meses
Puntos: 0
pues no entiendo que es lo que quieres, pero bueno, espero que lo soluciones pronto.

Y si quieres ver en funcionamiento mi buscador pincha aqui .

Un saludo.
  #10 (permalink)  
Antiguo 28/03/2003, 09:02
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 22 años, 3 meses
Puntos: 0
Que accedes a sql?

En mi buscador el cliente esta obligado a escribir con acentos la palabra, osea que eso no es algo que me preocupa.

lo que no se por qué, si escribe con acento, no la encuentra de todas maneras... entendes?
osea, si escribe camara y en la bd esta como cámara, esta bien que no la encuentre, pero si escribe cámara debería encontrarlo... o no?

será el interbase?

saludos...
__________________
Juan Pablo
  #11 (permalink)  
Antiguo 28/03/2003, 09:09
 
Fecha de Ingreso: mayo-2002
Mensajes: 197
Antigüedad: 22 años, 10 meses
Puntos: 0
Supongo que es una tonteria, pero porque no pruebas a si buscas "cámara" hacer que la busqueda sea a "c & a cute;mara" (pero todo junto), es que interbase no la conozco y no se me ocurre otra cosa.

Última edición por choroy; 28/03/2003 a las 09:12
  #12 (permalink)  
Antiguo 28/03/2003, 09:24
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 22 años, 3 meses
Puntos: 0
YA HE PROBADO CON ESO, PERO TAMPOCO FUNCIONA...

NO SE QUE PUEDE ESTAR PASANDO...


GRACIAS VIEJO
__________________
Juan Pablo
  #13 (permalink)  
Antiguo 09/04/2003, 11:11
 
Fecha de Ingreso: diciembre-2002
Ubicación: argentina... de ahí seran veinte cuadras
Mensajes: 382
Antigüedad: 22 años, 3 meses
Puntos: 0
El problema lo tenía interbase.

Choroy, en cuanto a la función para transformar los acentos.

inserté el código tal cual me lo diste, y luego al sql lo dejé asi:

strsql=strsql & "WHERE TITULO_OBRA LIKE '%" & AccIns(TITULO_OBRA) &"%'"

pero el resultado es este:

select * from PUBNA WHERE TITULO_OBRA LIKE '%COMUNICACION%'

que puede estar pasando?



saludos
__________________
Juan Pablo

Última edición por tarlipes; 09/04/2003 a las 11:18
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 02:30.