Foros del Web » Programando para Internet » PHP »

Problema con ñ's y acentos en PHP

Estas en el tema de Problema con ñ's y acentos en PHP en el foro de PHP en Foros del Web. Hola A ver si alguien me puede ayudar, hago una llamada a base de datos para extraer unos datos, estos viene con acentos y ñ, ...
  #1 (permalink)  
Antiguo 13/12/2011, 18:11
 
Fecha de Ingreso: diciembre-2011
Mensajes: 159
Antigüedad: 12 años, 4 meses
Puntos: 18
Pregunta Problema con ñ's y acentos en PHP

Hola

A ver si alguien me puede ayudar, hago una llamada a base de datos para extraer unos datos, estos viene con acentos y ñ, trate de limpiar con estos codigos

Código:
function quitar($s)
{
$s = ereg_replace("[áàâãª]","a",$s);
	$s = ereg_replace("[ÁÀÂÃ]","A",$s);
	$s = ereg_replace("[éèê]","e",$s);
	$s = ereg_replace("[ÉÈÊ]","E",$s);
	$s = ereg_replace("[íìî]","i",$s);
	$s = ereg_replace("[ÍÌÎ]","I",$s);
	$s = ereg_replace("[óòôõº]","o",$s);
	$s = ereg_replace("[ÓÒÔÕ]","O",$s);
	$s = ereg_replace("[úùû]","u",$s);
	$s = str_replace("[ÚÙÛ]","U",$s);
	$s = str_replace("ñ","n",$s);
	$s = str_replace("Ñ","N",$s);
	$s = str_replace("CALL ","",$s);
	$s = str_replace("BLVD ","",$s);
	$s = str_replace("AVE ","",$s);
	$s = str_replace("AV. ","",$s);
	$s = str_replace("RINC ","RINCONADA ",$s);
	$s = str_replace("MER ","MERCADO ",$s);
	$s = str_replace("CIR ","",$s);
	$s = str_replace("PROL ","",$s);
	$s = str_replace("MA ","MARIA ",$s);
	
	
return $s;
}
function eliminarblancos($cadena){
         $cadena=trim($cadena);
		 
		 $cadena=str_replace(" ","+",$cadena);
         return $cadena;
}
elproblemaes que no lo hace, mando un echo para ver antes y despues y me muestra lo mismo, tampoco me limpia el espacio que esta antes de CANCÚN, ya trate y busque pero no encuentro la solucion, sin embargo si sustituye y quita el espacio al final tanto de CANCÚN como el de YAXCHILAN 23, tampoco me quita eñes.

'YAXCHILAN 23 ' en ' CANCÚN ' y ' CANCÚN' y 'YAXCHILAN+23'

' RUISEÑOR 801 ' en ' CELAYA ' y ' CELAYA' y 'RUISEÑOR+801'

Agraezco cualquier ayuda.

Saludos

Última edición por nestornoe; 13/12/2011 a las 18:20
  #2 (permalink)  
Antiguo 13/12/2011, 19:16
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Problema con ñ's y acentos en PHP

quizás en la base no se guardó ta tilde, sino que se codificó, entonces no lo reconoce como una letra acentuada.
Quisáz tambien los espacios se guardaron asi

Código PHP:
Ver original
  1.  

Es lo primero que se me ocurre
__________________
la la la
  #3 (permalink)  
Antiguo 13/12/2011, 19:40
 
Fecha de Ingreso: diciembre-2011
Mensajes: 159
Antigüedad: 12 años, 4 meses
Puntos: 18
Respuesta: Problema con ñ's y acentos en PHP

Cita:
Iniciado por truman_truman Ver Mensaje
quizás en la base no se guardó ta tilde, sino que se codificó, entonces no lo reconoce como una letra acentuada.
Quisáz tambien los espacios se guardaron asi

Código PHP:
Ver original
  1.  

Es lo primero que se me ocurre
En la base de datos parecen normales, por ejemplo CANCÚN, esta con el acento, y las ñ igual, no comprendo por que no lo reconoce, como sea gracias
  #4 (permalink)  
Antiguo 13/12/2011, 20:57
 
Fecha de Ingreso: diciembre-2011
Mensajes: 21
Antigüedad: 12 años, 4 meses
Puntos: 1
Respuesta: Problema con ñ's y acentos en PHP

Hola... no se si este es el problema que tienes?

http://www.forosdelweb.com/f18/solucionado-problemas-con-tildes-enes-php-mysql-498511/
  #5 (permalink)  
Antiguo 13/12/2011, 21:26
 
Fecha de Ingreso: diciembre-2011
Mensajes: 159
Antigüedad: 12 años, 4 meses
Puntos: 18
Respuesta: Problema con ñ's y acentos en PHP

Cita:
Iniciado por chmorataya Ver Mensaje
Hola... no se si este es el problema que tienes?

http://www.forosdelweb.com/f18/solucionado-problemas-con-tildes-enes-php-mysql-498511/
Gracias por responder, lo voy a probar, en este momento ya cerre todo, mañana lo pruebo, y reviso que todo este correcto, en si es un poco diferente ya que los datos se cargaron desde una base de datos en CSV, lo que estoy haciendo es actualizar algunos datos de forma automatica, pero no me los lee si tienen la ñ, acento o espacio, por eso el problema. No es tanto el mostrarlos, al mostralos no tengo problema.

Saludos
  #6 (permalink)  
Antiguo 15/12/2011, 10:22
 
Fecha de Ingreso: diciembre-2011
Mensajes: 159
Antigüedad: 12 años, 4 meses
Puntos: 18
Respuesta: Problema con ñ's y acentos en PHP

Hola

por si a alguien le interesa encontre la respuesta aqui mismo en el sitio, les pongo la funcion

Cita:
function limpieza_url($cadena)
{ $cadena = utf8_encode($cadena);
$vocalti= array ("á","é","í","ó","ú","Á","É","Í","Ó","Ú","ñ","Ñ"," À","È","Ì","Ò","Ù","à","è","ì","ò","ù","ç","Ç","â" ,"ê","î","ô","û","Â","Ê","Î","Ô","Û","ü","ö","Ö"," ï","ä","ë","Ü","Ï","Ä","Ë"," ","\r\n","\n");
$vocales= array ("a","e","i","o","u","A","E","I","O","U","n","N"," A","E","I","O","U","a","e","i","o","u","c","C","a" ,"e","i","o","u","A","E","I","O","U","u","o","O"," i","a","e","U","I","A","E","-","-","-");
$cadena=str_replace($vocalti, $vocales,$cadena);
$cadena = strtolower($cadena);
$find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
$repl = array('', '-', '');
$cadena = preg_replace($find, $repl, $cadena) . ".php";
return $cadena;
}
  #7 (permalink)  
Antiguo 15/12/2011, 10:53
 
Fecha de Ingreso: agosto-2010
Ubicación: Mexico
Mensajes: 180
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Problema con ñ's y acentos en PHP

o Puedes usar &(vocal)acute; por si lo quieres manejar en html

Etiquetas: eñes, funciones
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 08:16.