2015-11-05 87 views
0

我有一个PHP项目,允许用户提交的一篇文章/教程,我插入数据到我的数据库之前,我做PHP安全结构,用户输入的输出

 $content1 = htmlspecialchars($userscontent); 
     $content = htmlentities($content1, ENT_QUOTES); 

为安全起见,当我输出的数据从我的数据库中解码。现在我希望文本结构化,而不是只写在一行上,而且我还希望添加向文章添加图像的功能,而我不知道哪种是最好的方法。

任何帮助表示赞赏。

+0

呃,你现在试试看会发生什么?它是剥离内容吗? –

+0

是的,它绝对是剥离的内容,但我如何让用户添加图像让我们说HTML? – user3929828

+0

用下面的东西对HTML进行消毒处理:http://htmlpurifier.org/ - 将非转义的HTML数据存储在数据库中是完全正确的; ''htmlentities()'应该被避免,除非它绝对是**必需的 - 它会带来更多的问题,而不是解决问题,更好的办法就是确保您使用的是UTF-8:http://stackoverflow.com/问题/ 279170/utf-8-all-the-way-through/279279 – CD001

回答

0

难道你不只是使用解码?

$result1 = html_entity_decode($result, ENT_QUOTES); 

$result = htmlspecialchars_decode($result1); 

参考文献:

Html entity decode

Htmlspecialchars decode

虽然,我肯定会推荐做什么@ CD001说,使用HtmlPurifier库。