Foros del Web » Programando para Internet » PHP »

Uso de htmlentities y mostrar código HTML

Estas en el tema de Uso de htmlentities y mostrar código HTML en el foro de PHP en Foros del Web. Hola a todos, Estoy probando de insertar código html con htmlentities en una bd y después mostrarlo (sin que se ejecute). Insertarlo en la BD ...
  #1 (permalink)  
Antiguo 09/10/2010, 08:03
 
Fecha de Ingreso: octubre-2003
Ubicación: España
Mensajes: 1.067
Antigüedad: 20 años, 6 meses
Puntos: 18
Uso de htmlentities y mostrar código HTML

Hola a todos,

Estoy probando de insertar código html con htmlentities en una bd y después mostrarlo (sin que se ejecute). Insertarlo en la BD me va bién pero cuando lo muestro, las eñes, acentos no se muestran correctamente. Entonces tengo que utilizar html_entity_decode pero se "ejecuta" dicho código y solo deseo mostrarlo.

¿Como puedo mostrar por pantalla HTML sin que se ejecute ??

Saludos!!
  #2 (permalink)  
Antiguo 09/10/2010, 08:27
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Uso de htmlentities y mostrar código HTML

¿ejecutar?

el HTML no se ejecuta, solo se visualiza... ahora, si el problema es con acentos y tildes, nada tiene que ver el uso de html_entity_decode() en todo caso el problema radica en el charset de tu documento...

así que también puedes valerte de funciones como utf8_encode() o utf8_decode() según sea el caso!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 09/10/2010, 09:05
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Uso de htmlentities y mostrar código HTML

ejecuta (?)

otra cosa.. si lo guardas correctamente con htmlentieies ... las Ñ y Acentos no existen ya que son reemplazados por su respectiva entidad
ñ = ñ

etc... entonces al parecer quiza nisiquiera este guardando bien a la base de datos

saludos.
__________________
More about me...
~ @rhyudek1
~ Github
  #4 (permalink)  
Antiguo 09/10/2010, 12:45
Avatar de metacortex
Viejo demente
 
Fecha de Ingreso: junio-2004
Ubicación: Caracas - Venezuela
Mensajes: 9.027
Antigüedad: 19 años, 10 meses
Puntos: 832
Respuesta: Uso de htmlentities y mostrar código HTML

Antes de implementar la decodificación vía PHP recomiendo revisar que el metatag HTML de la cabecera sea el correcto, por ejemplo:

Código HTML:
Ver original
  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Muchos programadores se lanzan de cabeza con el utf8_decode sin percatarse (o saber) que a veces el asunto está del lado del cliente.

PD: ¿Ejecutar qué?
  #5 (permalink)  
Antiguo 11/10/2010, 02:14
 
Fecha de Ingreso: octubre-2003
Ubicación: España
Mensajes: 1.067
Antigüedad: 20 años, 6 meses
Puntos: 18
Respuesta: Uso de htmlentities y mostrar código HTML

Hola a todos,

parece que ya tengo la solución.

Lo de ejecutar me refeiero a que si el usuario ha introducido código malicioso, por ejemplo, un script en javascript en el campo del formulario, si mas tarde dichos datos se visualizan dentro de las etiquetas body, pues se produce lo que se lla ma XSS (Cross site scripting), un fallo de seguridad y la web "ejecuta" dicho script que contiene el campo.
La solución por lo que veo pasa por mostrar dichos datos con htmlentities y si la web tiene formato utf-8 pues se le debe indicar:

$texto=htmlentities($_POST["textarea"], ENT_QUOTES, "utf-8");

Como en htmlentities no ponia lo de utf-8 me mostraba los datos con otra codificación..

Etiquetas: html, htmlentities
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 19:41.