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中读取和写入WORD文档的代码
Apr 09 PHP
基于MySQL体系结构的分析
May 02 PHP
PHP命名空间(Namespace)简明教程
Jun 11 PHP
php中动态修改ini配置
Oct 14 PHP
Laravel模板引擎Blade中section的一些标签的区别介绍
Feb 10 PHP
PHP ajax 异步执行不等待执行结果的处理方法
May 27 PHP
Zend Framework教程之Zend_Config_Xml用法分析
Mar 23 PHP
详解WordPress中添加友情链接的方法
May 21 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
Aug 31 PHP
PHP iconv()函数字符编码转换的问题讲解
Mar 22 PHP
Laravel创建数据库表结构的例子
Oct 09 PHP
Laravel框架下的Contracts契约详解
Mar 17 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列出mysql表所有行和列的方法
2015/03/13 PHP
PHP验证信用卡卡号是否正确函数
2015/05/27 PHP
php获取、检查类名、函数名、方法名的函数方法
2015/06/25 PHP
php实现与python进行socket通信的方法示例
2017/08/30 PHP
php实现微信公众号企业转账功能
2018/10/01 PHP
PHP 数组黑名单/白名单实例代码详解
2019/06/04 PHP
让IE8支持DOM 2(不用框架!)
2009/12/31 Javascript
分享20款好玩的jQuery游戏
2011/04/17 Javascript
一行代码实现纯数据json对象的深度克隆实现思路
2013/01/09 Javascript
JS操作iframe里的dom(实例讲解)
2014/01/29 Javascript
jQuery on()绑定动态元素出现的问题小结
2016/02/19 Javascript
无缝滚动的简单实现代码(推荐)
2016/06/07 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
2016/06/12 Javascript
Angular中封装fancyBox(图片预览)遇到问题小结
2017/09/01 Javascript
vue中created和mounted的区别浅析
2019/08/13 Javascript
基于Vue.js与WordPress Rest API构建单页应用详解
2019/09/16 Javascript
细述Javascript的加法运算符的具体使用
2019/10/18 Javascript
vue开发简单上传图片功能
2020/06/30 Javascript
Python实现将sqlite数据库导出转成Excel(xls)表的方法
2017/07/17 Python
pip安装Python库时遇到的问题及解决方法
2017/11/23 Python
一看就懂得Python的math模块
2018/10/21 Python
Appium+Python自动化测试之运行App程序示例
2019/01/23 Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
2019/03/05 Python
使用python-Jenkins批量创建及修改jobs操作
2020/05/12 Python
虚拟机下载python是否需要联网
2020/07/27 Python
python 判断一组数据是否符合正态分布
2020/09/23 Python
Python实现中英文全文搜索的示例
2020/12/04 Python
HTML5表单验证特性(知识点小结)
2020/03/10 HTML / CSS
如何在.net Winform里面显示PDF文档
2012/09/11 面试题
毕业生求职简历中的自我评价
2013/10/18 职场文书
中学门卫岗位职责
2013/12/26 职场文书
最新党员思想汇报
2014/01/01 职场文书
乡文化站暑期培训方案
2014/08/28 职场文书
javascript遍历对象的五种方式实例代码
2021/10/24 Javascript
漫画「狩龙人拉格纳」公开TV动画预告图
2022/03/22 日漫
Java字符缓冲流BufferedWriter
2022/04/09 Java/Android