过滤函数详情:
- //变量正数型处理
- 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("\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("\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 RepPostStr($val,$ecms=0){
- $val=ehtmlspecialchars($val,ENT_QUOTES);
- if($ecms==0)
- {
- CkPostStrChar($val);
- $val=AddAddsData($val);
- //FireWall
- FWClearGetText($val);
- }
- return $val;
- }
- //处理提交字符2
- function RepPostStr2($val){
- CkPostStrChar($val);
- $val=AddAddsData($val);
- //FireWall
- FWClearGetText($val);
- return $val;
- }
- //处理地址
- function RepPostStrUrl($val){
- $val=str_replace('&','&',RepPostStr($val,1));
- return $val;
- }
- //处理提交字符
- function hRepPostStr($val,$ecms=0){
- if($ecms==1)
- {
- $val=ehtmlspecialchars($val,ENT_QUOTES);
- }
- CkPostStrChar($val);
- $val=AddAddsData($val);
- return $val;
- }
- //处理提交字符2
- function hRepPostStr2($val){
- CkPostStrChar($val);
- $val=AddAddsData($val);
- return $val;
- }
- //处理编码字符
- function CkPostStrChar($val){
- if(substr($val,-1)=="\\")
- {
- exit();
- }
- }
- //返回转义
- function egetzy($n='2'){
- if($n=='rn')
- {
- $str="\r\n";
- }
- elseif($n=='n')
- {
- $str="\n";
- }
- elseif($n=='r')
- {
- $str="\r";
- }
- elseif($n=='t')
- {
- $str="\t";
- }
- elseif($n=='syh')
- {
- $str="\\\"";
- }
- elseif($n=='dyh')
- {
- $str="\'";
- }
- else
- {
- for($i=0;$i<$n;$i++)
- {
- $str.="\\";
- }
- }
- return $str;
- }
总结为:
(1)、数字型变量可以用(int)或intval函数处理,例子:
$page=(int)$_GET['page'];
或
$page=intval($_GET['page']);
(2)、带小数点的数字型变量可以用(float)或floatval函数处理,例子:
$money=(float)$money;
或
$money=floatval($money);
(3)、字符型处理:
不带空格或其他特殊符号的,用
RepPostVar()函数过滤
带空格或其他特殊符号的用:
RepPostVar2()函数过滤
写入数据库的用:
RepPostStr()函数过滤