Foros del Web » Programando para Internet » PHP »

Busquedas insensibles a mayúsculas

Estas en el tema de Busquedas insensibles a mayúsculas en el foro de PHP en Foros del Web. Llevo ya tiempo programando, y una de mis dudas siempre ha sido el tema del LIKE. Como sabremos, esta característica teóricamente es insensible a las ...
  #1 (permalink)  
Antiguo 03/06/2009, 08:56
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 15 años, 6 meses
Puntos: 1
Busquedas insensibles a mayúsculas

Llevo ya tiempo programando, y una de mis dudas siempre ha sido el tema del LIKE.
Como sabremos, esta característica teóricamente es insensible a las mayúsculas/minúsculas, pero en todos mis casos, esto no es así.
¿A que debe ser? ¿Alguien tiene idea?

Tengan en cuenta:
- Suelo usar MyISAM
- Cotejamiento 'utf8_bin'
- Un ejemplo de consulta:
SELECT * from tabla where nombre LIKE '%$_POST[algo]%' order...

Lo que vengo haciendo hasta ahora es poner todo en minúsculas y en mayúsculas, y en caso de que coincidan, lo encuentra.
Si buscamos "albaro", y en la db está como "Albaro", xD nos quedamos con las ganas porque no saldrá.

Un saludo.
  #2 (permalink)  
Antiguo 03/06/2009, 09:02
Avatar de By_George  
Fecha de Ingreso: abril-2009
Ubicación: localhost
Mensajes: 629
Antigüedad: 14 años, 11 meses
Puntos: 19
Respuesta: Busquedas insensibles a mayúsculas

umm checa si el tipo de dato del campo al que intentas buscar sea solo varchar por que si es varbinary si que te distingue entre mayusculas y minusculas
__________________
La estadística es una ciencia que demuestra que si mi vecino tiene dos coches y yo ninguno, los dos tenemos uno.
  #3 (permalink)  
Antiguo 03/06/2009, 09:06
 
Fecha de Ingreso: mayo-2009
Ubicación: Vigo
Mensajes: 66
Antigüedad: 14 años, 10 meses
Puntos: 3
Respuesta: Busquedas insensibles a mayúsculas

Hola

La cuestión de la sensibilidad a mayusculas y minusculas viene dad por el cotejamiento de la base de datos..

Yo tuve un problema parecido y postee la respuesta por ahi..

lo tengo en mi blog.

jmsgtecnologias.blogspot.com/2009/05/mysql-busqueda-de-texto-consin-tildes.html

De todas formas segun recuerdo, va con el prefijo, si un cotejamiento lleva el sufijo _ci es insensible a may/min. Si no quieres cambiar el cotejamiento de la tabla, puedes directamente cambiarlo en el LIKE como explico en el blog.

Un saludo.
  #4 (permalink)  
Antiguo 03/06/2009, 09:06
Usuario no validado
 
Fecha de Ingreso: octubre-2008
Ubicación: BRUSELAS
Mensajes: 211
Antigüedad: 15 años, 5 meses
Puntos: 3
Respuesta: Busquedas insensibles a mayúsculas

pues acabo de pensar una cosa, no se si es buena idea, pero podrias hacerlo

digamos que haces la query

tu buscas albaro, y de la base de datos sacas Albaro,

lo que podrias hacer es, una vez que tienes Albaro sacas su MD5, y sacas el MD5 de albaro, y miras si son iguales....

espero haberme explicado bien..

logicamente no seran iguales.
  #5 (permalink)  
Antiguo 03/06/2009, 09:26
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Busquedas insensibles a mayúsculas

Jose, COLLATE no va, me devuelve un error de sintaxis.Saludos.
  #6 (permalink)  
Antiguo 03/06/2009, 13:11
 
Fecha de Ingreso: septiembre-2008
Mensajes: 91
Antigüedad: 15 años, 6 meses
Puntos: 1
Respuesta: Busquedas insensibles a mayúsculas

Las prisas... Ya va, gracias, y muy útil
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 00:39.