我有一些存储在数据库中的页面.出于安全考虑,所有页面在保存到数据库之前都会进行转义,但是当我打印页面时,HTML标记仍然会被转义.像这样
显然,这不是很好,所以我如何浏览页面?
我试过html_entity_decode没有任何成功.
最佳答案
虽然数据在插入数据库之前应该进行转义,但在取出数据时仍不应对其进行转义.问题的根本原因是它在收集之间被转义两次,并在它从数据库出来后进行检查.
原文链接:https://www.f2er.com/mysql/433635.html您应该追踪它为什么被转义两次并修复它.
这可能会使现有数据中断(这取决于数据是否在途中被转义两次,或者是否在使用magic_quotes_runtime从数据库中转出时被转义).如果是这样,您需要清理它.这种转义形式与HTML无关,可以通过stripslashes
反转.
清理将类似于:
> SELECT * from database_table
>创建prepared UPDATE statement以更新行
>对双重转义的数据进行foreach行striplashes,将数据传递给预准备语句