PHP简单预防sql注入的方法


Posted in PHP onSeptember 27, 2016

本文实例讲述了PHP简单预防sql注入的方法。分享给大家供大家参考,具体如下:

出现sql注入一般都是因为语法不规范不严谨造成的,问题出现在sql语句上,而起决定性的是quote(')。如下:

$sql = "delete from table where id ='$id'" ;

正常提交的话就是删除一条数据,若id提交的是(1 ' or 1 #),那么sql语句就变成了

delete from table where id = '1'or 1 #';

这样的话就会把整个表给删掉,造成无法挽回的结果。

既然问题出现在quote上,那么只要将其转义即可(\')

php提供两个函数使用

addslashes($str)
//建议使用下面的,可以避免出现字符集问题
mysql_real_escape_string($str,$link)
//避免整型数据可能不被sql增加引号,强制在转换后的数据使用引号包裹
function($str){
  return "'".mysql_real_escape_string($str,$this->link)."'";
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
PHP chmod 函数与批量修改文件目录权限
May 10 PHP
PHP PDOStatement:bindParam插入数据错误问题分析
Nov 13 PHP
php基于mcrypt的加密解密实例
Oct 27 PHP
PHP制作万年历
Jan 07 PHP
php正则替换处理HTML页面的方法
Jun 17 PHP
PHP 将数组打乱 shuffle函数的用法及简单实例
Jun 17 PHP
PHP模糊查询的实现方法(推荐)
Sep 06 PHP
php 魔术常量详解及实例代码
Dec 04 PHP
Yii框架创建cronjob定时任务的方法分析
May 23 PHP
php实现的支付宝网页支付功能示例【基于TP5框架】
Sep 16 PHP
php 自定义函数实现将数据 以excel 表格形式导出示例
Nov 13 PHP
php使用Swoole实现毫秒级定时任务的方法
Sep 04 PHP
PHP数据对象PDO操作技巧小结
Sep 27 #PHP
PHP基于GD库的图像处理方法小结
Sep 27 #PHP
PHP文件上传操作实例详解
Sep 27 #PHP
PHP目录操作实例总结
Sep 27 #PHP
PHP文件操作实例总结
Sep 27 #PHP
PHP命名空间namespace用法实例分析
Sep 27 #PHP
PHP7标量类型declare用法实例分析
Sep 26 #PHP
You might like
PHP+JS+rsa数据加密传输实现代码
2011/03/23 PHP
php文件夹与文件目录操作函数介绍
2013/09/09 PHP
php bootstrap实现简单登录
2016/03/08 PHP
php自定义截取中文字符串-utf8版
2017/02/27 PHP
Jquery css函数用法(判断标签是否拥有某属性)
2011/05/28 Javascript
javascript时间函数基础介绍
2013/03/28 Javascript
js返回上一页并刷新的多种实现方法
2014/02/26 Javascript
jquery实现在页面加载的时自动为日期插件添加当前日期
2014/08/20 Javascript
jQuery插件实现无缝滚动特效
2015/11/24 Javascript
Bootstrap布局组件应用实例讲解
2016/02/17 Javascript
利用JS实现点击按钮后图片自动切换的简单方法
2016/10/24 Javascript
简单的Vue异步组件实例Demo
2017/12/27 Javascript
vue 2.0 购物车小球抛物线的示例代码
2018/02/01 Javascript
vue使用rem实现 移动端屏幕适配
2018/09/26 Javascript
node全局变量__dirname与__filename的区别
2019/01/14 Javascript
详解基于electron制作一个node压缩图片的桌面应用
2019/01/29 Javascript
react PropTypes校验传递的值操作示例
2020/04/28 Javascript
基于javascript原生判断DOM是否加载完毕
2020/10/14 Javascript
[46:04]Liquid vs VP Supermajor决赛 BO 第四场 6.10
2018/07/05 DOTA
Django与遗留的数据库整合的方法指南
2015/07/24 Python
python获取当前运行函数名称的方法实例代码
2017/04/06 Python
TensorFlow实现Softmax回归模型
2018/03/09 Python
python实现对csv文件的列的内容读取
2018/07/04 Python
python3利用venv配置虚拟环境及过程中的小问题小结
2018/08/01 Python
用vue.js组件模拟v-model指令实例方法
2019/07/05 Python
使用python matploblib库绘制准确率,损失率折线图
2020/06/16 Python
Python装饰器结合递归原理解析
2020/07/02 Python
基于tensorflow __init__、build 和call的使用小结
2021/02/26 Python
HTML5学习笔记之History API
2015/02/26 HTML / CSS
canvas实现烟花的示例代码
2020/01/16 HTML / CSS
GWT都有什么特性
2016/12/02 面试题
年度考核自我鉴定
2013/11/09 职场文书
2014班子成员自我剖析材料思想汇报
2014/10/01 职场文书
工作失职检讨书500字
2014/10/17 职场文书
消防隐患整改通知书
2015/04/22 职场文书
初中生物教学随笔
2015/08/15 职场文书