【发布时间】:2012-01-10 09:30:07
【问题描述】:
是否可以使用一个功能来清理由于表单提交或任何其他请求而传入的输入。这是节省时间,但有效性和效率的问题仍然困扰着我。例如,
function clearSpecialChars($str)
{
$str=htmlentities($str);
$str=strip_tags($str);
$str=mysql_real_escape_string($str);
return $str;
}
这样当我收到表单提交时,我会这样做:
$username=clearSpecialChars($_REQUEST['username']);
$email=clearSpecialChars($_REQUEST['email']);
从根本上说,我不希望用户提供任何 html 输入。
【问题讨论】:
-
一种尺寸永远不会适合所有人。这只是一种偷懒的尝试。
-
我不明白。你的意思是上面比逐步使用它们更容易受到攻击?
-
一个尝试解决 SQL 注入漏洞,另一个尝试解决跨站点脚本漏洞(尽管如果不小心使用,两者都无法成功完成任务 - 通常在与其他工具结合使用)。它们应该永远在任何地方按顺序使用,因为它们彼此无关。
-
感谢秋葵。我从来没有想过用过度杀伤力来形容这个词:)
标签: php security function sanitize