2013-04-08 128 views
-2

我想在mysql數據庫中存儲一些html代碼,我沒有這樣做過,什麼是在db中存儲html的正確方法?如何在mysql中存儲html代碼?

$html_code='<div class="hello"><p>hello world</p></div>'; 

// database table 
part_name | html_code 
hello | ?? 
+0

'part_name | html_code hello | 「這是什麼? – Ejaz 2013-04-08 05:47:00

+0

[將HTML存儲到MySQL數據庫中]可能的重複(http://stackoverflow.com/questions/2641561/store-html-into-mysql-database) – Rikesh 2013-04-08 05:47:43

+3

你有沒有在MySQL數據庫中存儲任何東西? – 2013-04-08 05:48:06

回答

3

我的建議是使用htmlpurifier來爲你做它,淨化輸入,並刪除所有惡意代碼

否則,你寫這樣remove_special_chars($string)功能去除特殊字符像<>"與替換它們像&lt;&gt;&quot; ...並保存到你的分貝。 從db讀取數據後,使用add_special_chars($string)等功能反之亦然,以顯示內容。這並不容易,仍然不可靠

+0

@DannyBeckett,謝謝。我編輯了我的帖子 – Amir 2013-04-08 06:19:58

+0

爲什麼在db插入前刪除標籤? html應該按原樣插入,並且只能在輸出之前「消毒」。例如,如果''存儲在用戶的評論字段中,當我們嘗試讀取它時會發生什麼,那麼數據庫中不存在惡意的html/j – 2013-04-08 06:53:25

+0

@DamienPirsy。 – Amir 2013-04-08 07:00:14