Foros del Web » Programando para Internet » PHP »

No me muestra los acentos ni las ñ

Estas en el tema de No me muestra los acentos ni las ñ en el foro de PHP en Foros del Web. Hola, Cuando escribo un texto en mi web me sale con caracteres extraños: Cita: mañana corazón etc. Y lo escribo así: Código PHP:   echo  ...
  #1 (permalink)  
Antiguo 27/09/2008, 10:12
Avatar de pato12  
Fecha de Ingreso: septiembre-2007
Ubicación: Salta
Mensajes: 1.620
Antigüedad: 16 años, 6 meses
Puntos: 101
No me muestra los acentos ni las ñ

Hola,
Cuando escribo un texto en mi web me sale con caracteres extraños:
Cita:
mañana
corazón
etc.
Y lo escribo así:
Código PHP:
 echo nl2br($dat['cansion']); 
Pero cuando vi que me salía así lo cambie a:
Código PHP:
echo utf8_encode(nl2br($dat['cansion'])); 
Pero igual, ¿porque?
Gracias
Salu2
__________________
Half Music - www.halfmusic.com
  #2 (permalink)  
Antiguo 27/09/2008, 10:23
Avatar de vidalsoft  
Fecha de Ingreso: julio-2008
Ubicación: /www/...
Mensajes: 339
Antigüedad: 15 años, 8 meses
Puntos: 1
Respuesta: No me muestra los acentos ni las ñ

Hola. prueba asi:

Código PHP:
<?php
echo utf8_encode($dat['cansion']);  
?>
y si quieres salto de linea :

echo utf8_encode($dat['cansion'])."\n";

o asi:

echo utf8_encode($dat['cansion'])."</br>";

Saludos...
__________________
Anthony Vidal Contreras | @AnthonyVidalC | Skype: vidalsystem | [email protected]
  #3 (permalink)  
Antiguo 27/09/2008, 10:26
Avatar de Snd234  
Fecha de Ingreso: mayo-2007
Ubicación: Frente al PC
Mensajes: 413
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: No me muestra los acentos ni las ñ

Si usas firefox, ve tu pagina y anda a Ver>Codificación de caracteres y selecciona Occidental (ISO-8859-1)

Si luego se te ve bien, entonces en tu pagina cambia la codificación a iso-8859-1, en una de las etiquetas meta.
__________________
KIBIT.cl
  #4 (permalink)  
Antiguo 27/09/2008, 11:15
Avatar de pablinff  
Fecha de Ingreso: diciembre-2005
Ubicación: Argentina
Mensajes: 383
Antigüedad: 18 años, 3 meses
Puntos: 7
Respuesta: No me muestra los acentos ni las ñ

Pon estos META Tags dentro de tu <head></head>:
Código PHP:
<meta http-equiv="content-Type" content="text/html; charset=iso-8859-1" />
<
meta http-equiv="content-type" content="Mime-Type; charset=iso-8859-1" /> 
Prueba y cualquier cosa comentas.

Saludos!
__________________
I'm gonna start a revolution from my bed...
  #5 (permalink)  
Antiguo 27/09/2008, 11:29
 
Fecha de Ingreso: septiembre-2008
Mensajes: 12
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: No me muestra los acentos ni las ñ

Mejor pon esto:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  #6 (permalink)  
Antiguo 27/09/2008, 14:14
Avatar de Snd234  
Fecha de Ingreso: mayo-2007
Ubicación: Frente al PC
Mensajes: 413
Antigüedad: 16 años, 10 meses
Puntos: 2
Respuesta: No me muestra los acentos ni las ñ



En resumen, si estas sacando datos de una base de datos, la codificación de la pagina tiene que ser la misma que la codificación que usa la base de datos para guardar los datos, sino tendrás que transformar cualquiera de ellas cada vez.
__________________
KIBIT.cl
  #7 (permalink)  
Antiguo 27/09/2008, 20:07
Avatar de pablinff  
Fecha de Ingreso: diciembre-2005
Ubicación: Argentina
Mensajes: 383
Antigüedad: 18 años, 3 meses
Puntos: 7
Respuesta: No me muestra los acentos ni las ñ

Lo mejor que puedes hacer respecto al tema de caracteres raros, tales como "ñ", y vocales acentuadas, es reemplazarlas por su equivalente entidad html:

Caracter Equivalente
ñ &ntilde;
á &aacute;
Á &Aacute;
é &eacute;

Esos son algunos ejemplos, como verás las entidades van entre "&" y ";" y para el caso de los acentos se utiliza el caracter + "acute", para la "ñ" -> "tilde".

Saludos!
__________________
I'm gonna start a revolution from my bed...
  #8 (permalink)  
Antiguo 14/11/2013, 06:57
Avatar de Double0  
Fecha de Ingreso: noviembre-2013
Ubicación: Sancti-Spiritus
Mensajes: 1
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: No me muestra los acentos ni las ñ

Saludos soy nuevo por aqui les dejo esta propuesta espero les sirva
//esta funcion reemplaza los caracteres de la cadena que recibe como primer parametro
//el segundo parametro indica el modo de reemplazo por ej
//modo 0 para reemplazar normales por standar web ej á por &aacute;
//cualquier otro valor que se pase por modo lo tomara como modo inverso ej
//&aacute; por á
Código PHP:
Ver original
  1. function remplazar ($remplazable,$modo)
  2. {
  3. $caracteres = array("á","é","í","ó","ú","ñ","Ñ");
  4. $standar=array("&aacute;","&eacute;","&iacute;","&oacute;","&uacute;","&ntilde;","&Ntilde;");
  5.         if($modo=="0")
  6.         {    //
  7.              $stringresult = str_replace($caracteres, $standar, $remplazable);
  8.         }
  9.         else
  10.         {
  11.              $stringresult = str_replace($standar,$caracteres , $remplazable);
  12.         }
  13.         return $stringresult;
  14. }

luego solo les falta llamar al metodo ej
Código PHP:
Ver original
  1. $tuString=remplazar ($tuString,"1");
para convertir todos los á í... a &aacute; etc o
Código PHP:
Ver original
  1. $tuString=remplazar ($tuString,"0");
para hacer la operacion inversa
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 12:11.