¿Como mostrar de manera segura datos almacenados usando htmlentities?

Para almacenar contenido en una base de datos utilizo algo parecido a esto antes de realizar la operación de INSERT, y así evitar algunos problemas de seguridad:

$variable = stripslashes($_POST['contenido']);
$variable = strip_tags($variable);
$variable = htmlentities($variable);
$variable = htmlspecialchars($variable);

Pero al leer la base de datos para mostrar el contenido, lógicamente los acentos y caracteres especiales no se muestran de manera correcta. La solución sería usar htmlspecialchars_decode, pero con eso no volvería a tener problemas de seguridad al reinterpretar el posible código introducido.

1 respuesta

Respuesta
1

Si puedes tener problemas de seguridad, lo ideal y aconsejable es que si usas este tipo de inserts, puedes utilizar Stored Procedures, con esto reduces el peligro, de inserción, de otra forma tienes que utilizar con mucho cuidado las entradas o activar el magic_quotes.

Anexo referencias:

http://dev.mysql.com/doc/connector-net/en/connector-net-tutorials-stored-procedures.html 

http://php.net/manual/es/security.magicquotes.php 

Gracias por visitar: http://develoteca.com

y por suscribirte en:https://www.youtube.com/user/dimit28 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas