checksql.phpļڳĿͷ
function checksql($str){//
$encoding ="utf-8";
$str=trim($str);
$mgl_str="script,iframe,and,execute,update,count,mid,master,truncate,char,create,delete,insert,drop";//Ҫ˵ĵ
$mgl_array=explode(",",$mgl_str);
if(in_array(strtolower($str),$mgl_array)){//ǵʵҪ ֱֵӵdelete
return $str;
}
for($i=0;$i
$len=strlen($val);
$a1=substr($val,0,1);
$new_val="".ord($a1).";".substr($val,1,($len-1));
$str = str_ireplace($val,$new_val,$str); //˼ǰscript滻script shtmlֱʾs ǿո˼
}
//if(!get_magic_quotes_gpc()){
$str=addslashes($str);
//}
$str = str_ireplace("(","(",$str); asciiе(ַ40
$str = str_ireplace(")",")",$str); asciiе)ַ41,)htmlţ һ
$str = str_ireplace("`","`",$str);
return $str;
}
function unchecksql($str){//
$str=trim($str);
$mgl_str="script,iframe,and,execute,update,count,mid,master,truncate,char,create,delete,insert,drop";//Ҫ˵ĵ
$mgl_array=explode(",",$mgl_str);
for($i=0;$i
$len=strlen($val);
$a1=substr($val,0,1);
$old_val="".ord($a1).";".substr($val,1,($len-1));
$str = str_ireplace($old_val,$val,$str);
}
$str = str_ireplace("(","(",$str);
$str = str_ireplace(")",")",$str);
$str = str_ireplace("`","`",$str);
$str=stripslashes($str);
return $str;
}
function checkvalues($arr){//
foreach($arr as $k =>$v){
if(is_array($v)){
$arr[$k]=checkvalues($v);
}else{
$arr[$k]=checksql($v);
}
}
return $arr;
}
?>
auto_check.aspļڳĿͷ
if(isset($_GET)){
$_GET=checkvalues($_GET);
}
if(isset($_POST)){
$_POST=checkvalues($_POST);
}
if(isset($_REQUEST)){
$_REQUEST=checkvalues($_REQUEST);
}
?>
ӣ
//asp.net Ӷ̬עô˸asp.netһλܻˣåļһDzһ֮ǰͶô㶯̬飬ҪܳʱŶdz
$res["title"]=123456;
$names1=array("name"=>"my2 name is delete","execute"=>"abc execute");
$names[0]=$names1;
$names2=array("name"=>"my2 name isdelete","execute"=>"4521 execute");
$names[1]=$names2;
$res["names"]=$names;
var_dump(checkvalues($arr));
//echo unchecksql("1333333333\' or 1=1 or \' script");
?>