检查输入中是否有HTML

时间:2016-05-05 14:32:15

标签: php xss

我有一个textarea,用户可以在其中添加内容。为了避免插入HTML,我在textarea上使用了PHP functions

$text = addslashes(strip_tags(htmlspecialchars($_POST['message'])));

来自用户的消息类似于DB中的消息。

8KsAtP  <a href="http://lqexajgwyrsk.com/">lqexajgwyrsk</a>,
[url=http://imndawriqhnk.com/]imndawriqhnk[/url],
[link=http://qyozfozrqier.com/]qyozfozrqier[/link],
http://oykrvybeqata.com/

我的问题是我如何检查textarea中的HTML代码,而不是像上面那样将其插入数据库中我想显示错误消息。

我的问题与How to prevent XSS with HTML/PHP?的不同之处在于我询问如何检查字段中是否存在html或链接。并回答这个问题我如何检查也由戴尔提供。虽然this question正在询问如何预防。我已经使用了this answer.

中给出的功能

1 个答案:

答案 0 :(得分:0)

直接回答您的问题:

// check there is no html content
if(strip_tags($_POST['message']) == $_POST['message']) {
    // continue to process
} else {
    // there is html in the message
}