找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1051|回复: 1
打印 上一主题 下一主题

php中过滤非法字符的具体实现

[复制链接]

2536

主题

2536

帖子

7532

积分

论坛元老

Rank: 8Rank: 8

积分
7532
跳转到指定楼层
楼主
发表于 2018-2-14 08:11:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            [U]复制代码[/U] 代码如下:
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

2652

主题

2652

帖子

7872

积分

论坛元老

Rank: 8Rank: 8

积分
7872
沙发
发表于 2018-2-14 08:11:23 | 只看该作者
$value){$this->stopattack($key,$value,$this->getfilter);}
foreach($_POST as $key=>$value){$this->stopattack($key,$value,$this->postfilter);}
foreach($_COOKIE as $key=>$value){$this->stopattack($key,$value,$this->cookiefilter);}
}
/**
* 参数检查并写日志
*/
public function stopattack($StrFiltKey, $StrFiltValue, $ArrFiltReq){
if(is_array($StrFiltValue))$StrFiltValue = implode($StrFiltValue);
if (preg_match("/".$ArrFiltReq."/is",$StrFiltValue) == 1){
$this->writeslog($_SERVER["REMOTE_ADDR"]." ".strftime("%Y-%m-%d %H:%M:%S")." ".$_SERVER["HP_SELF"]." ".$_SERVER["REQUEST_METHOD"]." ".$StrFiltKey." ".$StrFiltValue);
showmsg('您提交的参数非法,系统已记录您的本次操作!','',0,1);
}
}
/**
* SQL注入日志
*/
public function writeslog($log){
$log_path = CACHE_PATH.'logs'.DIRECTORY_SEPARATOR.'sql_log.txt';
$ts = fopen($log_path,"a+");
fputs($ts,$log."\r\n");
fclose($ts);
}
}
?>
            
            
您可能感兴趣的文章:
  • php 字符过滤类,用于过滤各类用户输入的数据
  • 几个有用的php字符串过滤,转换函数代码
  • php中数组首字符过滤功能代码
  • PHP字符过滤函数去除字符串最后一个逗号(rtrim)
  • 浅析php过滤html字符串,防止SQL注入的方法
  • PHP对表单提交特殊字符的过滤和处理方法汇总
  • PHP字符串中特殊符号的过滤方法介绍
  • php过滤所有恶意字符(批量过滤post,get敏感数据)
  • php小技巧之过滤ascii控制字符
  • php表单敏感字符过滤类
            
  • 回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端