我運行一個MySQL和PHP驅動的博客/評論風格的網站,並希望把它使用戶可以添加格式標記到自己的崗位,如<bold>
,<italics>
等標籤,但是,在運行像ヶ輛因此用戶不能發佈類似<a>
或<div id="footer">
的內容並打破該網站。如何爲htmlentities標記異常?
所以,問題是我該如何解決這個問題?我是否會將它設置爲如此高效或類似的功能具有允許標記的白名單?我無法在這個問題上找到任何結果或協助。目前我對數據庫實體的分層排序是:
$content = nl2br ($_POST["content"]);
$content = mysql_real_escape_string($content);
$content = trim($content);
$content = htmlentities($content);
感謝您的任何幫助。再次,我想知道如果htmlentities甚至是我想用來完成這個功能,所以任何建議或地方看,將不勝感激!
您的操作順序是一路順風。您不應該同時執行內容過濾*和SQL轉義。 [閱讀更多](http://stackoverflow.com/a/3126175/168868)。 – Charles
對不起,我對數據庫輸入環境衛生仍然很陌生。我應該怎麼做? nl2br是我發現的方法,以確保/ n換行符能夠以簡單的方式保持格式化。 –
請閱讀我發佈的鏈接。標有「閱讀更多」的標籤。它會教你關於驗證和衛生的不同類型以及它們應該在何時何地使用。 – Charles