//htmlspecialchars处理 function ehtmlspecialchars($val,$flags=ENT_COMPAT){ global $ecms_config; if(PHP_VERSION>='5.4.0') { if($ecms_config['sets']['pagechar']=='utf-8') { $char='UTF-8'; } else { $char='ISO-8859-1'; } $val=htmlspecialchars($val,$flags,$char); } else { $val=htmlspecialchars($val,$flags); } return $val; } //addslashes处理 function eaddslashes($val,$ckmq=1){ if($ckmq==1&&MAGIC_QUOTES_GPC) { return $val; } $val=addslashes($val); return $val; } //addslashes处理 function eaddslashes2($val,$ckmq=1){ if($ckmq==1&&MAGIC_QUOTES_GPC) { return addslashes($val); } $val=addslashes(addslashes($val)); return $val; } //stripSlashes处理 function estripSlashes($val,$ckmq=1){ if($ckmq==1&&!MAGIC_QUOTES_GPC) { return $val; } $val=stripSlashes($val); return $val; } //stripSlashes处理 function estripSlashes2($val,$ckmq=1){ if($ckmq==1&&!MAGIC_QUOTES_GPC) { return stripSlashes($val); } $val=stripSlashes(stripSlashes($val)); return $val; } //变量正数型处理 function RepPIntvar($val){ $val=intval($val); if($val<0) { $val=0; } return $val; } //参数处理函数 function RepPostVar($val){ if($val!=addslashes($val)) { exit(); } CkPostStrChar($val); $val=str_replace("%","",$val); $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); //FireWall FWClearGetText($val); return $val; } //参数处理函数2 function RepPostVar2($val){ if($val!=addslashes($val)) { exit(); } CkPostStrChar($val); $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); //FireWall FWClearGetText($val); return $val; } //参数处理函数3 function RepPostVar3($val){ if($val!=addslashes($val)) { exit(); } CkPostStrChar($val); $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); //FireWall FWClearGetText($val); return $val; } //验证编码字符 function CkPostStrCharYh($val){ if($val!=addslashes($val)) { exit(); } 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; } //处理提交字符2 function RepPostStr2($val,$phck=0){ if($phck==1) { CkPostStrCharYh($val); } CkPostStrChar($val); $val=AddAddsData($val); //FireWall FWClearGetText($val); return $val; } //处理地址 function RepPostStrUrl($val,$phck=0){ $val=str_replace('&','&',RepPostStr($val,1,$phck)); return $val; } //发现在搜索处理关键字的方法采用的是RepPostVar2函数 function SearchDoKeyboardVar($keyboard){ $keyboard=str_replace(' ','',$keyboard); $keyboard=RepPostVar2(trim($keyboard)); return $keyboard; }
总结为(以下总结来自网络):
(1)、数字型变量可以用(int)或intval函数处理,例子:
$page=(int)$_GET['page'];
或
$page=intval($_GET['page']);
(2)、带小数点的数字型变量可以用(float)或floatval函数处理,例子:
$money=(float)$money;
或
$money=floatval($money);
(3)、字符型处理:
不带空格或其他特殊符号的,用
RepPostVar()函数过滤
带空格或其他特殊符号的用:
RepPostVar2()函数过滤
写入数据库的用:
RepPostStr()函数过滤
如果本文对你有帮助,欢迎打赏本站