Foros del Web » Programando para Internet » PHP »

echo y caractere extraños

Estas en el tema de echo y caractere extraños en el foro de PHP en Foros del Web. Hola. Sé que es una tontería y error de novato pero no consigo encontrar la solución y para qué nos vamos a engañar, soy un ...
  #1 (permalink)  
Antiguo 13/11/2009, 07:04
Avatar de frisca  
Fecha de Ingreso: mayo-2004
Ubicación: Murcia
Mensajes: 176
Antigüedad: 19 años, 11 meses
Puntos: 0
Mensaje echo y caractere extraños

Hola.

Sé que es una tontería y error de novato pero no consigo encontrar la solución y para qué nos vamos a engañar, soy un novato...

El caso es que no sé cómo evitar que, por ejemplo un echo escrito así

echo "Nación"

Me muestre:

Naci�n

En resumen, cómo hacer para en PHP mostrar el texto con tildes y caracteres especiales legiblemente

Gracias!!
__________________
Que si contara el tiempo que paso mirando al techo pensando en ella...
  #2 (permalink)  
Antiguo 13/11/2009, 07:09
 
Fecha de Ingreso: septiembre-2009
Ubicación: Neuquén
Mensajes: 142
Antigüedad: 14 años, 6 meses
Puntos: 12
Respuesta: echo y caractere extraños

es cuestion de ajustar las codificaciones...

en el html que tipo de codificacion estas usando?

igual proba haciendo esto a ver cual te anda:

Código php:
Ver original
  1. <?php
  2.  
  3. echo utf8_encode('Nación');
  4. echo utf8_decode('Nación');
  5.  
  6. ?>

Saludos!
  #3 (permalink)  
Antiguo 13/11/2009, 07:10
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: echo y caractere extraños

prueba a poner esto:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  #4 (permalink)  
Antiguo 13/11/2009, 07:14
Avatar de frisca  
Fecha de Ingreso: mayo-2004
Ubicación: Murcia
Mensajes: 176
Antigüedad: 19 años, 11 meses
Puntos: 0
Respuesta: echo y caractere extraños

Nada... sigue igual
__________________
Que si contara el tiempo que paso mirando al techo pensando en ella...
  #5 (permalink)  
Antiguo 13/11/2009, 07:18
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: echo y caractere extraños

aparte de todo eso ocupemos los caracteres como se usa en HTML

Naci&oacute;n
de ser buscado de base de datos, estos ojala estubieran pasados con htmlentities.

saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #6 (permalink)  
Antiguo 13/11/2009, 07:21
Avatar de frisca  
Fecha de Ingreso: mayo-2004
Ubicación: Murcia
Mensajes: 176
Antigüedad: 19 años, 11 meses
Puntos: 0
Respuesta: echo y caractere extraños

Se muestran de la base de datos, los muestro con

echo "option='{$row['campo']}'"
__________________
Que si contara el tiempo que paso mirando al techo pensando en ella...
  #7 (permalink)  
Antiguo 13/11/2009, 10:06
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Respuesta: echo y caractere extraños

primero las comillas simples estan raras hay...
deberia ser

echo "option=\"$row[campo]\"";

no entiendo los {} tampoco
segundo estas trabajando los datos con ajax? o simple html si es simple HTML fijate en tu charset como pone rompeguesos si es ajax deberia ser utf8


lo otro probar lo que expone Nisrokh


echo "option=\"".utf8_encode($row[campo])."\"";

mi pregunta es como esta guardado el campo en base de datos tambien de modo
Nación o Naci&oacute;n
y el tipo de collation de tu base de datos si es utf8 unicode etc...
siempre es bueno guardar los datos con htmlentities y te evitas en parte estas cositas...
saludos

saludos
__________________
Gokuh Salvo al mundo. PUNTO!!!!
  #8 (permalink)  
Antiguo 13/11/2009, 11:47
 
Fecha de Ingreso: septiembre-2009
Mensajes: 124
Antigüedad: 14 años, 7 meses
Puntos: 3
Respuesta: echo y caractere extraños

Hola!

Si no tenes cabeceras HTML que identifiquen la codificacion de la pagina y los valores los traes desde una base de datos, lo que tenes que hacer es poner la siguiente funcion:

utf8_decode($variable);

Ahora bien, como dice kaninox, guardando los datos con htmlentities te evitas tanto este disgusto y tambien posibles inyecciones SQL.

Espero que te sirva.

Saludos!
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 03:07.