php – 当将文本区域输出回文本区域时,如何正确清理从文本区域接收的数据?

前端之家收集整理的这篇文章主要介绍了php – 当将文本区域输出回文本区域时,如何正确清理从文本区域接收的数据?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
用户将在textarea中输入文本.然后将其直接插入MysqL数据库.我在它上面使用trim,htmlentities,mysql_real_escape_string,并启用了魔术引号.将数据输出回textarea时,我应该如何清理它?

谢谢你的帮助.我从来没有太确定这样做的正确方法……

保存时不应使用htmlentities.你应该在显示它时使用htmlentities.经验法则是在您需要之前不对数据进行编码/清理.如果你在保存时对它进行了很好的处理,那么当用户想要编辑输入时,你必须对文本执行html_entity_decode.因此,您需要消毒以满足您的需求,仅此而已.保存时,需要清理sql注入,所以你要MysqL_real_escape_string它.在显示时,您需要对XSS进行清理,因此您需要对其进行清理.

另外,我不确定你是否看过Darryl Hein的评论,但你真的不希望启用magic_quotes. They are a bad,bad,thing并且自PHP 5.3起已被弃用,并且将在PHP 6中完全消失.

猜你在找的PHP相关文章