php防注入,表单提交值转义的兑现详细明白_php技艺_脚本之家澳门京葡网站

在付出时,大家要小心防备sql注入,所以在对表单提交过来的值要做相应的拍卖,技术够把数量更新到数据Curryphp横扫千军函数。任何值都足以传过来转变复制代码 代码如下:function quotes {
//假使magic_quotes_gpc=Off,那么就起来拍卖 if
(!get_magic_quotes_gpc { //判定$content是不是为数组 if {
//倘使$content是数组,那么就管理它的每二个单无 foreach ($content as
$key=>$valueState of Qatar { $content[$key]php防注入,表单提交值转义的兑现详细明白_php技艺_脚本之家澳门京葡网站。 = addslashes; } } else {
//借使$content不是数组,那么就仅管理三遍 addslashes; } } else {
//假如magic_quotes_gpc=On,那么就不管理 } //重临$content return
$content;展现的时候要用 stripslashes 了,它能把addslashes去掉

SQL injection难题在ASP上只是闹得人山人海当然还会有超多国内外著名的PHP程序“遇难”。至于SQL injection的详细情况,网络的篇章太多了,在那就不作介绍。
比如你网址空间的php.ini文件里的magic_quotes_gpc设成了off,那么PHP就不会在敏感字符前增加反斜杠(),由于表单提交的原委恐怕含有敏感字符,如单引号(’),就招致了SQL injection的狐狸尾巴。在此种状态下,大家得以用addslashes(State of Qatar来缓慢解决难题,它会自行在敏锐字符前加多反斜杠。
然而,上面的法子只适用于magic_quotes_gpc=Off的图景。作为多少个开采者,你不亮堂各类客户的magic_quotes_gpc是On依然Off,假诺把一切的多少都用上addslashes(卡塔尔国,那不是“草薙禽狝”了?假如magic_quotes_gpc=On,并且又用了addslashes(卡塔尔(قطر‎函数,那让大家来会见: 
复制代码
代码如下://借使从表单提交三个变量$_POST[‘message’],内容为 Tom’s book 
//那此投入连接MySQL数据库的代码,本人写吧 
//在$_POST[‘message’]的敏感字符前加上反斜杠 
$_POST[‘message’] = addslashes($_POST[‘message’]); 

//由于magic_quotes_gpc=On,所以又一回在敏感字符前加反斜杠 
$sql = “INSERT INTO msg_table VALUE(‘$_POST[message]’);”; 

//发送乞请,把内容保留到数据库内 
$query = mysql_query($sql); 

//假如您再从数据库内提取那一个记录并出口,就能看见 Tom’s book 
?> 

发表评论

电子邮件地址不会被公开。 必填项已用*标注