如果我需要輸出像用htmlspecialchars()和htmlspecialchars_decode()
<div><a>Some link</a></div>
不是從數據庫中檢索到的字符串,是有必要使用
echo htmlspecialchars_decode(htmlspecialchars('<div><a>Some link</a></div>'));
或者是它已經安全地直接回聲
echo '<div><a>Some link</a></div>';
防止XSS攻擊?
我應該消毒文本,其中;:'「{} [] $%#@^& *()-_ + = | <>〜是允許的,將其插入到數據庫之前 !?我的意思是,我應該將它們插入到數據庫之前轉換特殊字符?
我使用的PDO。
如果您直接從PHP代碼回顯它,它是安全的。 – mkabanen
因此,HTML在您的代碼中是硬編碼的?那麼不需要轉義。 –
fyi:XSS攻擊是從客戶端到服務器,而不是從服務器到客戶端 – lordkain