Foros del Web » Programación para mayores de 30 ;) » Programación General »

mostrar texto correctamente

Estas en el tema de mostrar texto correctamente en el foro de Programación General en Foros del Web. Hola maestros, tengo una pequeña consulta, ojalá podais ayudarme. Vereis, intento mostrar el texto de una noticia guardada en base de datos y el problema ...
  #1 (permalink)  
Antiguo 01/09/2008, 08:32
Avatar de frasko01  
Fecha de Ingreso: junio-2008
Mensajes: 200
Antigüedad: 16 años, 7 meses
Puntos: 3
Pregunta mostrar texto correctamente

Hola maestros, tengo una pequeña consulta, ojalá podais ayudarme.

Vereis, intento mostrar el texto de una noticia guardada en base de datos y el problema es que los caracteres que llevan tilde o las 'eñes' no aparecen...

Se que hay una funcion para ello "htmlentities()", pero si uso esta función muestro las etiquetas <p>, <br>, etc. que no deberian salir.

¿Hay algún modo de solucionar esto?

Gracias.
  #2 (permalink)  
Antiguo 01/09/2008, 08:49
 
Fecha de Ingreso: julio-2007
Mensajes: 30
Antigüedad: 17 años, 7 meses
Puntos: 1
Respuesta: mostrar texto correctamente

hola.

Para no tener problemas con eso, yo lo que hago es:

Los campos de la bd en utf8_general_ci
El documento con un content-type en utf8
Y el propio documento guardado con una codificación en utf8.

Espero que te sirva.

Un saludo!
  #3 (permalink)  
Antiguo 01/09/2008, 09:01
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años, 3 meses
Puntos: 75
Respuesta: mostrar texto correctamente

mira es sencillo
cuando vayas a colocar una palabra que tenga tilde haz lo siguiente:
á --> &aacute;
é --> &eacute;
í --> &iacute;
ó --> &oacute;
ú --> &uacute;
ñ --> &ntilde;

por ejemplo:
para que en el diseño te salga corazón, en el codigo escribe: coraz&oacute;n

y eso es todo, son facil aprenderlos
por si algo esta pagina los enontre:

http://www.desarrolloweb.com/faq/334.php
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #4 (permalink)  
Antiguo 01/09/2008, 09:06
Avatar de frasko01  
Fecha de Ingreso: junio-2008
Mensajes: 200
Antigüedad: 16 años, 7 meses
Puntos: 3
Respuesta: mostrar texto correctamente

Ok gracias por vuestras respuestas.

Veré qué puedo hacer.

Saludos.
  #5 (permalink)  
Antiguo 01/09/2008, 20:35
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 8 meses
Puntos: 2135
Respuesta: mostrar texto correctamente

Tema trasladado a Ingeniería de Software y Gestión de Proyectos.
  #6 (permalink)  
Antiguo 01/09/2008, 20:53
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 7 meses
Puntos: 416
Respuesta: mostrar texto correctamente

Sino usa strtr.
http://www.php.net/strtr

Código PHP:
<?php
$matriz 
= array("á"=>"&aacute;""é"=>"&eacute;""í"=>"&iacute;""ó"=>"&oacute;""ú"=>"&uacute;""ñ"=>"&ntilde;");

$campo $row['campo'];

$nuevocampo strtr($campo$matriz);

echo 
$nuevocampo;

?>
  #7 (permalink)  
Antiguo 03/09/2008, 09:51
Avatar de frasko01  
Fecha de Ingreso: junio-2008
Mensajes: 200
Antigüedad: 16 años, 7 meses
Puntos: 3
Respuesta: mostrar texto correctamente

Gracias Ronruby pero no me funciona
He copiado y modificado el código un poco y no consigo que funcione

Código PHP:
$matriz = array("á"=>"&aacute;""é"=>"&eacute;""í"=>"&iacute;""ó"=>"&oacute;""ú"=>"&uacute;""ñ"=>"&ntilde;""Á"=>"&Aacute;""É"=>"&Eacute;""Í"=>"&Iacute;""Ó"=>"&Oacute;""Ú"=>"&Uacute;""Ñ"=>"&Ntilde;""®"=>"&reg;");

$txt $registro['texto'];
$nuevo strtr($txt$matriz); 
¿Qué puede estar fallando?

Saludos
  #8 (permalink)  
Antiguo 05/09/2008, 22:30
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 7 meses
Puntos: 416
Respuesta: mostrar texto correctamente

O_O ¿Como insertas los datos a la BD?
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 09:51.