2015-11-05 66 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庫。