如何在php中正确检查用户输入?

时间:2011-12-30 01:21:02

标签: php validation

我有一个检查用户输入的功能,并想知道它是否可以防止此类攻击。此外,如果我想在每个需要它的页面上包含此功能,我可以将它放在自己的php页面中,然后包括()'把它放到需要的页面里。感谢。

function secure_data($value)
{
if (get_magic_quotes_gpc()) {
    $value = stripslashes($value);
}
if (function_exists("mysql_real_escape_string" )) {
    $value = mysql_real_escape_string($value);
} else {
    $value = addslashes($value);
}
return $value;
}

1 个答案:

答案 0 :(得分:2)

由于您正在使用引号,我假设您的主要问题是如何防止SQL注入,如果我没有弄错的话。 (注意:防止SQL注入是安全的,然后保护,例如Cross Site Scripting!);并且不保证您的安全申请。

SQL注入的最佳解决方案不是使用此函数,而是使用mysqli或PDO的预准备语句。 (见:How can I prevent SQL injection in PHP?

其他有趣的链接:

sql注入的背景信息: https://www.owasp.org/index.php/SQL_Injection

其他验证: http://www.faqs.org/docs/gazette/superglobals.html

OWASP的输入验证: https://www.owasp.org/index.php/Input_Validation