SQL注入与安全防护---以PHP为例

一、什么是sql注入:

  简单来说,当我们从前端的用户表单数据往后台数据库传输时,可能用户表单数据中的某些数据,会跟我们的后台发生“有机”反应,从而导致发生一些数据库的异常操作。

举个例子吧,以简单的用户登录注册来说。前端传递过来的字符串是。$usename=$_POST['usename],$password=$_POST['password'].

当我们构造sql语句时,我们采用的语句时.$sql="select * from tb_use where usename='$usename' and password='$password';

正常而言,用户输入的数据都是正常的,但是当某一些有意输入便会出现问题。比如用户在用户名输入的是:admin';drop table tb_use;select * from usename='123

此时,默认构造的sql语句会变成:$sql="select * from tb_use where usename='admin';drop table tb_use;select * from usename='123'and password='$password';

将会删除数据表,由此引发了sql注入的问题。

二、必要的措施

  有几个函数可以解决此问题,已经附录在参考网址中

参考文献与资源:

https://segmentfault.com/a/1190000008117968

猜你喜欢

转载自www.cnblogs.com/hxh88/p/8919051.html
今日推荐