更新时间:2022-12-08 来源:黑马程序员 浏览量:
SQL注入产生的根本原因是因为程序在开发过程中不注意规范书写SQL语句和对特殊字符进行过滤,导致客户端可以通过全局变量POST和GET提交一些特殊字符,让SQL语句正常执行。
防止SQL注入的常用方法有如下几种:
1.开启配置文件中的magic_quotes_gpc和magic_quotes_runtime设置,对一些字符过滤。
2.执行SQL语句时使用addslashes()函数,对特殊字符转义后再执行SQL语句。
3.SQL语句书写尽量不要省略小引号(")和单引号('')。
4.过滤掉SQL语句中的一些关键字,例如update、insert、delete、select、*等。
5.提高数据库表和字段的命名技巧,对一些重要的字段根据程序的特点命名,取不易被猜到的名字。
6.PHP配置文件中设置register_globals为off,关闭全局变量注册。
7.控制错误信息,不要在浏览器上输出错误信息,将错误信息写到日志文件中。
8.使用mysqli或PDO预处理。
【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19【AI大模型开发-Python】毕业33个工作日,就业率已达到94.55%,班均薪资20763元
2025-09-19【AI智能应用开发-Java】毕业5个工作日就业率98.18%,最高薪资 17.5k*13薪,全班平均薪资9244元
2025-09-19