我一直用它来清理xss-injects中的textareas,我还没有遇到任何问题但是因为我一直在google上阅读,我不确定这是否是一种安全的方法。
$comment = nl2br(htmlspecialchars($_POST['comment']));
然后我使用mysqli和bind_param()将它插入我的数据库;防止sql-inject
而且我只是按<p><?php echo $info['comment']; ?></p>
这是一种安全的方式吗?
我想要做的就是清理然后将其存储在我的数据库中然后输出它,并使用工作线路。
提前致谢,
答案 0 :(得分:3)
使用数据库库提供的转义按原样存储。 nl2br
,如果需要htlmentities/specialchars
,则显示它。
答案 1 :(得分:1)
你根本就没有消毒。
如上所述,您需要使用转义数据库库提供的内容,因为转义方法因数据库类型而异。
从历史上看,您使用的是mysql_real_escape_string(),但自PHP 5.5.0起,现在已弃用。