PHP 实现过滤参数字符的方法


//参数处理函数2
function RepPostVar2($val){
if($val!=addslashes($val))
{
exit();
}

if(substr($val,-1)=="\\")
{
exit();
}

$val=str_replace("%","",$val);
$val=str_replace("`","",$val);
$val=str_replace("\t","",$val);
$val=str_replace("%20","",$val);
$val=str_replace("%27","",$val);
$val=str_replace("*","",$val);
$val=str_replace("'","",$val);
$val=str_replace("\"","",$val);
$val=str_replace("/","",$val);
$val=str_replace(";","",$val);
$val=str_replace("#","",$val);
$val=str_replace("--","",$val);
$val=RepPostStr($val,1);
$val=addslashes($val);


FWClearGetText($val);
return $val;
}

//处理提交字符
function RepPostStr($val,$ecms=0,$phck=0){
if($phck==1)
{
CkPostStrCharYh($val);
}
$val=ehtmlspecialchars($val,ENT_QUOTES);
if($ecms==0)
{
CkPostStrChar($val);
$val=AddAddsData($val);
//FireWall
FWClearGetText($val);
}
return $val;
}

 

//检查敏感字符
function FWClearGetText($str){
global $ecms_config;
if(empty($ecms_config['fw']['eopen']))
{
return '';
}
if(empty($ecms_config['fw']['cleargettext']))
{
return '';
}
$r=explode(',',$ecms_config['fw']['cleargettext']);
$count=count($r);
for($i=0;$i<$count;$i++)
{
if(stristr($r[$i],'##'))//多字
{
$morer=explode('##',$r[$i]);
if(stristr($str,$morer[0])&&stristr($str,$morer[1]))
{
FWShowMsg('Post String');
}
}
else
{
if(stristr($str,$r[$i]))
{
FWShowMsg('Post String');
}
}
}
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM