Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/05/2006, 10:57
Avatar de KarQ
KarQ
 
Fecha de Ingreso: septiembre-2005
Mensajes: 88
Antigüedad: 18 años, 7 meses
Puntos: 1
Problemas con strtolower y str_replace

Hola a todos:

Tengo un problemilla que parece una tonteria pero me lleva de cabeza:

Estoy intentando quitar acentos y mayúsculas para un buscador. Y hago lo siguiente:

Código PHP:
$cadena_busqueda $_POST['buscar_txt']; //guardo la cadena que viene por el post en una variable
$cadena_busqueda strtolower($cadena_busqueda); //convierto a minúsculas

//a continuación sustituyo todas las letras con acento por su correspondiente sin acento
$cadena_busqueda str_replace("á""a"$cadena_busqueda);
$cadena_busqueda str_replace("é""e"$cadena_busqueda);
$cadena_busqueda str_replace("í""i"$cadena_busqueda);
$cadena_busqueda str_replace("ó""o"$cadena_busqueda);
$cadena_busqueda str_replace("ú""u"$cadena_busqueda);

echo 
$cadena_busqueda//y aquí viene el problema 
Al devolver $cadena_busqueda me encuentro con que todas las letras que llevaban acento ahora aparecen como interrogantes, esto pasa ya cuando aplico la funcion strtolower, no se porque me para la cadena áéíóú me devuelve ?????. No se si es una cuestión de encoding o que está pasando, por cierto, al mirar en el codigo fuente de la página tambien aparecen los dichosos interrogantes.

¿Alguien me ayuda?

Gracias por adelantado.
__________________
KarQ - xC
mi weblog en: http://www.monochromatic.es