magic_quotes_gpc、mysql_real_escape_string、addslashes的区别及用法
本篇文章,主要先重点说明magic_quotes_gpc、mysql_real_escape_string、addslashes 三个函数方法的含义、用法,并举例说明。然后阐述下三者间的区别、关系。
一、magic_quotes_gpc
这个函数,只有在页面传递 $_GET,$_POST,$_COOKIE 时才会发生作用,主动进行调用,在web客户端执行。对传递的字符串是否进行转义处理。
用法: magic_quotes_gpc=on/off; (当为on时,主动对字符串进行转义处理,即添加转义斜线=单引号转换为\’,若为off,则不进行转义处理)一般默认为off。
举例:
if(!magic_quotes_gpc()){
$name = addslashes($_POST['name']);
}else{
$name = $_POST['name'];
}//这个是对 magic_quotes_gpc 定义的判断,若为off,就要通过 magic_quotes_gpc 进行转义处理,否则不做处理。
二、mysql_real_escape_string含义介绍
这个函数,作用和 magic_quotes_gpc 差不多,同样是对字符串进行转义处理,是在入数据库前的处理,特别是对于多字符节处理时,安全性高于下面要说的addslashes。可有效防止对数据库的攻击。
用法: mysql_real_escape_string(string,connection) ,string为转义字符串,connection为数据库连接字符串–可选。
三、addslashes含义介绍
在第一个举例中,我们用到了 addslashes 函数,作用同样为对GET、POST、COOKIE过来的字符串进行转义处理,通常与 magic_quotes_gpc 结合使用,。
用法:此函数是对字符串进行强行转义,另同magic_quotes_gpc。
举例:见第一点。
下面讲述下三者之间的区别、关系:
1、addslashes 与 mysql_real_escape_string,同样的作用是经过转义后,可直接插入数据库,但是后者安全性更高一些。
magic_quotes_gpc、mysql_real_escape_string、addslashes的区别及用法的更多相关文章
- magic_quotes_gpc和magic_quotes_runtime的区别和用法详解
当你的数据中有一些 " ' 这样的字符要写入到数据库里面,又想不被过滤掉的时候,它就很有用,会在这些字符前自动加上,如 中国地大物博"哈哈" 中国\地大物博&q ...
- Position属性四个值:static、fixed、absolute和relative的区别和用法
Position属性四个值:static.fixed.absolute和relative的区别和用法 在用CSS+DIV进行布局的时候,一直对position的四个属性值relative,absolu ...
- Python中内置数据类型list,tuple,dict,set的区别和用法
Python中内置数据类型list,tuple,dict,set的区别和用法 Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, ...
- angularjs中provider,factory,service的区别和用法
angularjs中provider,factory,service的区别和用法 都能提供service,但是又有差别 service 第一次被注入时实例化,只实例化一次,整个应用的生命周期中是个单例 ...
- [转]div与span区别及用法
DIV与SPAN区别及div与san用法篇 接下来了解在div+css开发的时候在html网页制作,特别是标签运用中div和span的区别及用法.新手在使用web标准(div css)开发网页的时候, ...
- GROUP BY,WHERE,HAVING之间的区别和用法
GROUP BY,WHERE,HAVING之间的区别和用法 分类: Oracle学习2009-11-01 23:40 21963人阅读 评论(6) 收藏 举报 mathmanagersql数据库m ...
- select into from 和 insert into select 的区别和用法及 SQL SELECT INTO 中Undeclared variable错误解决办法
今天试了一下数据表中的数据备份到另一个空的数据表,然后使用了SQL SELECT INTO语句,然后提示Undeclared variable......错误,现在在这里做下总结并给出解决办法. 应用 ...
- java抽象类与接口的区别及用法
java抽象类与接口的区别及用法 一.抽象类里面的方法可以有实现,但是接口里面的方法确是只能声明. 二.接口是设计的结果 :抽象类是重构的结果 . 三.java不支持多重继承,所以继承抽象类只能继承一 ...
- Linux基础教程之/dev/null和/dev/zero的区别及其用法
在Linux操作系统中/dev/null和/dev/zero是两个相似却又很特殊的文件,特别是在shell脚本开发和系统运维过程中会经常用这两个文件,因此作为Linux系统工程师,必须了解这两个文件的 ...
随机推荐
- div 背景色设置_DIV背景颜色设置
DIV 背景色设置篇-div背景颜色设置篇 一.div标签内直接设置背景颜色 - TOP <div style="background:#000; color:#FFF&quo ...
- 【HDOJ】1421 搬寝室
DP.这题都能TLE,发现memset有时居然比for还要慢. #include <stdio.h> #include <stdlib.h> #include <stri ...
- Fixing common issues when hosting a .NET 4.0 WCF service in IIS 7
http://sandrinodimattia.net/fixing-common-issues-when-hosting-a-net-4-0-wcf-service-in-iis-7/ Until ...
- bzoj2597
非常好的网络流题目 首先这里用到了求补集的思想,我们可以先求不满足的三元对的情况 设A-->B代表A赢B 由于最后所有胜负关系都确定,一定是一个完全图,所以任意一个不合法的三元对,单独取出来一定 ...
- HDU --- 4006
The kth great number Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Oth ...
- HDU-2522 A simple problem
http://acm.hdu.edu.cn/showproblem.php?pid=2522 学习://除数的运算的应用和算法.除法的本质,如果余数出现重复就表示有循环节 A simple probl ...
- Json 的日期格式转换成DateTime
JSON 的日期形式:”/Date(1242357713797+0800)/” , 下面我们就用以下C#的方法将他转换成DateTime类型: /// <summary> /// Json ...
- SSH隧道技术----端口转发,socket代理
原文的原始出处不详,本文也是在复制引用了某篇转载,并做了必要的整理与编辑. 本文的受众 如果你遇到了以下问题,那么你应该阅读这篇文章 我听说过这种技术,我对它很感兴趣 我想在家里访问我在公司的机器(写 ...
- Google表格
本博文的主要内容有 .Google表格的介绍 https://www.google.com/intl/zh-CN/sheets/about/ https://accounts.google.com/ ...
- 教你修改Linux下高并发socket最大连接数所受的各种限制
1.修改用户进程可打开文件数限制 在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开 文件数量的限制(这是因为系统为 ...