繁体   English   中英

如果在if语句中使用,我应该清理$ _POST数据吗?

[英]Should i sanitize $_POST data if used in if statement?

我正在网站上实现一个简单的封闭区域。 输入正确的密码即可授予访问权限。 密码是共享的,因此没有实际帐户。 我试图了解我是否缺少一些变量过滤,以及是否应该清理数据。 我很确定我必须这样做,但是我不知道什么是最好的方法。

在我的代码中,我有两个地方使用$ _POST变量中的数据:

if(isset($_POST)&&$_POST['the_password']!="")
{
    $my_password = $_POST['the_password'];
    //Should i use something like this?
    //$my_password = filter_input(INPUT_POST, 'the_password', FILTER_SANITIZE_STRING); 
}

第二个地方是我在if语句中使用变量的位置:

if($a_password == $my_password)
{
    //Query using the $a_password variable
}

在这部分代码中,$ a_password来自硬编码查询。

filter_input函数正确吗? 我想念什么吗?

最简洁的答案是不; 对于if语句,您的代码是安全的。

但是,如果以后编辑代码,则应在数据库查询中使用准备好的语句。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM