陈忠岩个人博客-一个生活在这个现实社会的小角色在讲述他的故事!

当前位置:首页 - 代码 - 正文

君子好学,自强不息!

PHP通用防注入安全代码

2018-01-05 | 代码 | 陈忠岩 | 250°c
A+ A-
简述: 
/************************* 
说明: 
判断传递的变量中是否含有非法字符 
如$_POST、$_GET 
功能: 
防注入 
**************************/  
<?php 
//要过滤的非法字符 
$ArrFiltrate=array("\'\'",";","union"); 
//出错后要跳转的url,不填则默认前一页 
$StrGoUrl=""; 
//是否存在数组中的值 
function FunStringExist($StrFiltrate,$ArrFiltrate){ 
foreach ($ArrFiltrate as $key=>$value){ 
if (eregi($value,$StrFiltrate)){ 
return true; 
} 
} 
return false; 
} 
//合并$_POST 和 $_GET 
if(function_exists(array_merge)){ 
$ArrPostAndGet=array_merge($HTTP_POST_VARS,$HTTP_GET_VARS); 
}else{ 
foreach($HTTP_POST_VARS as $key=>$value){ 
$ArrPostAndGet[]=$value; 
} 
foreach($HTTP_GET_VARS as $key=>$value){ 
$ArrPostAndGet[]=$value; 
} 
} 
//验证开始 
foreach($ArrPostAndGet as $key=>$value){ 
if (FunStringExist($value,$ArrFiltrate)){ 
echo "<script language=\\"javascript\\">alert(\\"Neeao提示,非法字符\\");</script>"; 
if (empty($StrGoUrl)){ 
echo "<script language=\\"javascript\\">history.go(-1);</script>"; 
}else{ 
echo "<script language=\\"javascript\\">window.location=\\"".$StrGoUrl."\\";</script>"; 
} 
exit; 
} 
} 
?>

保存为checkpostandget.php  
然后在每个php文件前加include(“checkpostandget.php“);即可


本文来源:陈忠岩个人博客

本文地址:http://www.chenzhongyan.com/Code/129.html

关注我们:微信搜索“chen_zhongyan”添加我为好友

版权声明:如无特别注明,转载请注明本文地址!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。


你好,朋友
真是美好的一天!
    最新文章 | 随机文章 | 热评文章
  • 陈忠岩个人博客
  • 巴彦生活网
  • 好DJ舞曲网
  • 订阅本站的 RSS 2.0 新闻聚合