如何中和包含html标签的输入?

时间:2011-04-14 22:44:48

标签: php mysql

我的意思是如果某人输入<a>gvfdg</a>,则不应显示链接。我试过了htmlspecialchars(),但没有帮助。在PHP和MySQL中。

mysql_real_escape_string(htmlspecialchars($mesaj));

$sql="INSERT INTO mesaj (Person1, Person2, mesaj)
VALUES ('$currentuser', '$id','$mesaj')";

if (!mysql_query($sql,$link))
{
die('Error: ' . mysql_error());
}
mysql_close($link);

2 个答案:

答案 0 :(得分:2)

此次电话

mysql_real_escape_string(htmlspecialchars($mesaj));

不起作用:您需要指定返回值。

$mesaj = mysql_real_escape_string(htmlspecialchars($mesaj));

但是,最好以原始格式将数据存储在数据库中,并在输出数据时执行htmlspecialchars()

我假设您正在mysql_real_escape_string()$currentuser上进行$id

答案 1 :(得分:1)

也许您正在搜索strip_tags。但是,在转换'&lt;'的意义上,htmlspecialchars()应该有效。和'&gt;'进入html实体,以便浏览器不解析。