Foros del Web » Programando para Internet » PHP »

collation php mysql para busquedas

Estas en el tema de collation php mysql para busquedas en el foro de PHP en Foros del Web. hola, mi consulta es sobre la collation para el mysql y para el php trabajo con idioma español pero tambien a veces el usuario ingresa ...
  #1 (permalink)  
Antiguo 03/12/2013, 23:00
 
Fecha de Ingreso: noviembre-2010
Mensajes: 100
Antigüedad: 14 años, 1 mes
Puntos: 0
collation php mysql para busquedas

hola, mi consulta es sobre la collation para el mysql y para el php

trabajo con idioma español pero tambien a veces el usuario ingresa algun caracter en ingles:

asi que creo que seria bueno el utf8 por lo que he estado buscando

pero que collation recomiendan?

el problema es:
la busqueda tiene que ser independiente de minisculas mayusculas acentos
ejm:
select * from contenido where con like '%compañía%' (tilde y ñ)
select * from contenido where con like '%compañia%' (sin tilde)
select * from contenido where con like '%COMPAÑÍa%' (mayuscula con tilde )
select * from contenido where con like '%compaÑia%' (ñ en mayuscula)

investige sin embargo no doy con la solucion,

usar utf8_bin es recomendable?

y si uso utf8_bin

siempre tengo que usar:?
utf8_encode()
utf8_decode()

mi proyecto asi toy q lo plasmo su html:
<?
header('Content-Type: text/html; charset=UTF-8');
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />


ayudenme por favor
__________________
Gracias
  #2 (permalink)  
Antiguo 04/12/2013, 14:08
 
Fecha de Ingreso: noviembre-2010
Mensajes: 100
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: collation php mysql para busquedas

alguna recomendacion?
__________________
Gracias
  #3 (permalink)  
Antiguo 04/12/2013, 18:01
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 3 meses
Puntos: 214
Respuesta: collation php mysql para busquedas

<saludos>
Pues para las búsquedas, lo mejor es que te definas en como buscar,
es decir, sin importar si el dato en bd está en mayúsculas o minúsculas
y a su vez sin importar si el dato digitado por quien busca está en
mayúsculas o minúsculas

Te sugiero por ej que uses las funciones UPPER o LOWER de la bd

Ej:
Código SQL:
Ver original
  1. SELECT campo FROM tabla WHERE UPPER(valor) LIKE UPPER('%dato%')

En cuanto a la codificación en la bd, normalmente es mejor usar latin9
o un iso8859-1 por ej, el utf8 podrías usarlo igualmente, pero pues
con unas cuantas pruebas verás si es o no necesario usar las funciones de encode y decode

Suerte con eso!
</saludos>
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com

Etiquetas: codificacion, mayusculas, minusculas, tildes
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:50.