php专区

 首页 > php专区 > PHP应用 > 常用功能 > 简单的php登录过滤防止sql注入方法

简单的php登录过滤防止sql注入方法

分享到:
【字体:
导读:
         [导读] 最近在了解SQL注入,发现很多人登录功能都是同时使用用户输入的 username 和 password ,组合到一条sql语句里面,查询判断有无结果来判定是否可登录。例如下面: ?php$username=$_POST[userna...

最近在了解SQL注入,发现很多人登录功能都是同时使用用户输入的usernamepassword,组合到一条sql语句里面,查询判断有无结果来判定是否可登录。例如下面:


db->query($sql);

这样很容易在 username 参数加入 ‘ or 1=1 -- 注入,虽然这只是示例,但现在很多使用框架,一不注意,最终组合成的语句也是类似这样的。这里不说输入参数过滤、参数绑定,语法分析等常用办法去应对SQL注入,我们可以转变一下判断方法:


db->query($sql); 
...... 
if($data['password'] == $password){ 
    //密码OK 
}else{ 
    //密码错误 
}

这样先查到数据,再用php本身来判断是否匹配密码,是不是解决了问题了?



分享到:
详细解读php的命名空间(二)
一:命名空间里的namespace关键字和__NAMESPACE__常量的运用 PHP支持两种抽象的访问当前命名空间内部元素的方法,__NAMESPACE__ 魔术常量和namespace关键字。 常量__NAMESPACE__会储存当前命名空间的名字字符串,如果当前是全局非命名空间,则保存的是空字符串。 关键字 namespace 可用来显式访问当前命名空间或子命名空间...
php实现页面跳转的多种方法
我们在PHP开发中偶尔会遇到PHP实现页面跳转的问题,PHP实现页面跳转有多种方法,今天我们就和大家一起来看看,PHP有哪些实现页面跳转的方法吧! 我们直接来看PHP实现页面跳转的吧! 1、php跳转代码一句话式: 2、php跳转代码if判断式: if($_COOKIE["u_type"]){     header('location:register.php'); }...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……