欢迎您来到,码代码-李雷博客        登录  |  注册

PHP5,6,7版本中如何使用magic_quotes_gpc转义数据保证安全

更新:2020-05-03 08:40:45
人气:480
来源:本站原创
A+

在PHP5版本有这样一个函数,magic_quotes_gpc函数,作用是在php中的判断解析用户提示的数据,如包括有:post、get、cookie过来的数据增加转义字符“\”,以保证这些数据不会引起程序,特别是数据库语句因为特殊字符引起的污染而出现致命的错误。

可是在PHP6和PHP7中已经取消了这个函数,这时候我们需要自己定义一个函数来保证数据是否需要转义。

function quotes_gpc_pd($gpc_value,$gpc_pd){ //转义字符   注意:checkbox[]数组时不能用这个,要不implode出错
	
	if (!get_magic_quotes_gpc()) {//判断一下是否支持magic_quotes_gpc,如果不支持就利用addslashes转义。
		$gpc_value = addslashes($gpc_value);    // delete backslash(\)
	}
	
	if ($gpc_pd=='1') {
		$gpc_value=htmlspecialchars($gpc_value,ENT_COMPAT,'ISO-8859-1');
	}
	
	return $gpc_value; 
	
}

实际在POST接收数据时,可以这样写:

$password=quotes_gpc_pd($_POST['password'],1);

其中的参数1表示需要htmlspecialchars转换。如果标记为0表示不用转换,这主要是为了比如在文章发布的时候有用到像百度编辑器Ueditor这种可以自行转换为html实体的插件,就没有必要再执行一次了,否则数据就错乱了。

打赏

取消

感谢您的支持,我会继续努力的!

扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

推荐的文章
# 发表我的评论
  /     /  
# 最近评论

PHP7 需要设置参数,这个值得注意一下:

htmlspecialchars($gpc_value,ENT_COMPAT,'ISO-8859-1');
  本站PHP博客源代码下载
  本站PHP博客源代码下载
本站使用的PHP博客系统采用PHP和MySql开发,程序开发完全是因为个人爱好,是自己纯手写PHP源代码,未采用任何PHP框架,现已免费开源共享提供给大家下载!
PHP博客下载
  联系博主
QQ:858353007   个人微信号:lileihot123
网站地图
会员服务
关于我们
QQ:858353007
 
广告服务
加我微信
移动端访问
 
 
Copyright © 2014- 2020 www.mdaima.com All Rights Reserved.
李雷博客,专注PHP经验、PHP教程及PHP源代码开源下载分享的PHP博客!   ICP备案号:京ICP备10202169号