mysqli + ckeditor =转义并打破html

时间:2012-08-10 21:05:01

标签: mysql ckeditor

所以我一直在开发一个小系统,用户可以在其中输入一些HTML到ckeditor,然后将HTML存储在数据库中(它是一种microCMS)。

问题是当使用Mysqli时,它会在“和”之前和之后插入转义字符,以便在逻辑上停止注入,这会破坏大量HTML代码。

例如

变 或接近那个破坏代码的东西

有没有办法可以禁用注入预防,或者以另一种方式将其输入数据库?或mabi​​取代/“从数据库中取出它?”

由于

-jman6495

编辑: 我已经解决了这个问题 我使用php str_replace函数替换了/“by”。

这是代码:                 $ pagecontent = str_replace('\“','”',$ pagecontent);                 echo $ pagecontent;

非常感谢

-jman6495

1 个答案:

答案 0 :(得分:1)

如果您在获取数据时看到这些字符,则会以某种方式双重转义内容。检查您是否只转义一次,并使用占位符而不是mysql_real_escape_string。你还没有解决问题。你没有完成一个严重错误的破坏。

SQL转义的目的是正确可靠地插入数据。例如,O'Reilly对于MySQL应该是O''Reilly。无论引用如何,数据库中的实际内容应为O'Reilly