重蔚php学习第三十三天——解决sql注入攻击问题

2022-10-11 21:21:50 208 0
魁首哥

什么是sql注入攻击?

上面代码主要用于验证用户名是否正确,主要需要数据库的查询,如果用户在文本框中:输入:韦小宝

select * from user where username=’韦小宝’

但如果,用户在文本框中输入:

那么,sql语句的组合就变成:

以上就是sql注入攻击的一种。

2.如何解决?

1)由于sql中的单引号的特殊性,所以我们要对用户输入的内容进行过滤。

如果,用户输入的内容中包含字符“’”,”””,”\”这些特殊字符时,会进行自动转义,在特殊字符前面加上“\”

2)在php. ini 配置文件中,可以配置用户提交数据的魔术转义

这个选项如果开启:magic_quotes_gpc=on

会对用户提交的数据自动进行转义

4)使用自动过滤函数,对用户提交的数据($_POST、$_GET)进行过滤

第一种:过于麻烦,如果表单内元素比较多,实现过程麻烦

第二种:由于高版本中会默认关闭此选项,我们对服务器往往没有配置权限

定义公共文件,封装魔术转义函数

在处理表单或url数据的php页面中:

收藏
分享
海报
0 条评论
208
上一篇:2018重庆PHP培训机构哪家好——扣丁学堂PHP培训 下一篇:ThinkPHP 5.0添加mysql存session驱动

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码