php中参数过滤与数据过滤的区别是什么?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
下面通过一段代码给大家介绍php参数过滤
class mysafe { ,public logname美元; ,public isshwomsg美元; ,function __construct () { set_error_handler才能(& # 39;MyError& # 39;, E_ALL),, ,//- - - - - - ,} ,function MyError ($ errno, errstr美元,errfile美元,美元errline) {,, echo 才能“& lt; b> Error 数字:& lt;/b>,美元errno, Error 提醒line errline 美元;拷贝errfile<美元;br /祝辞;“; 退出才能; ,} 美元,function wlog(日志){ 如果才能(空(logname美元)){ ,,这→美元logname=$ _SERVER [“DOCUMENT_ROOT"] !”/log.htm"; ,,}, $ t=才能fopen ($ this→logname,“a +,); fputs才能(Ts,日志美元霸主地位;\ r \ n"); 文件关闭才能(Ts); ,} ,function showmsg($味精=& # 39;& # 39;,美元标志=false) { 这个美元才能→isshwomsg=空($ this→isshwomsg), ?, false :,真的; if 才能;($ this→isshwomsg), { ,,echo & # 39; & lt; br /祝辞- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - & lt; br /祝辞;& # 39;; 美元,才能echo 味精; ,,echo & # 39; & lt; br /祝辞- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - & lt; br /祝辞;& # 39;; 美元,才能if (标志),退出; ,,}, ,} ,function get_filter () { 美元才能getfilter=? # 39; |和|或\ \ b。+ ?(祝辞| & lt; |=| |) | \ \/\ \ * + ?。\ \ * \ \/| & lt; \ \ s *脚本\ \ b | \ \ bEXEC \ \ |联盟。+ ?选择|更新。+ ? | \ \ s +插入。+ ?值|(选择|删除)。+ ?从|(创建| | |改变下降截断)\ \ s + |数据库(表)“;; foreach才能(_GET 美元;as 关键=美元在美元值){ ,,这→美元StopAttack(键,值,美元getfilter美元); ,,} ,} ,function post_filter () { 预滤器=美元才能“\ \ b(和|或)\ \ b。{1,6} ?(=|祝辞| & lt; | \ \ bin \ \ | \ \ blike \ \ b) | \ \/\ \ * + ?。\ \ * \ \/| & lt; \ \ s *脚本\ \ b | \ \ bEXEC \ \ |联盟。+ ?选择|更新。+ ? | \ \ s +插入。+ ?值|(选择|删除)。+ ?从|(创建| | |改变下降截断)\ \ s + |数据库(表)“;; foreach才能(_POST 美元;as 关键=美元在美元值){ ,,这→美元StopAttack(键,值,美元预滤器美元); ,,} ,} ,function cookie_filter () { 美元才能cookiefilter=癨 \ b(和|或)\ \ b。{1,6} ?(=|祝辞| & lt; | | \ \ bin \ \ b \ \ blike \ \ b) | \ \/\ \ * + ?。\ \ * \ \/| & lt; \ \ s *脚本\ \ b | \ \ bEXEC \ \ |联盟。+ ?选择|更新。+ ? | \ \ s +插入。+ ?值|(选择|删除)。+ ?从|(创建| | |改变下降截断)\ \ s + |数据库(表)“;; foreach才能(_COOKIE 美元;as 关键=美元在美元值){ ,,这→美元StopAttack(键,值,美元cookiefilter美元); ,,} ,} ,//过滤参数, ,function StopAttack ($ StrFiltKey StrFiltValue美元ArrFiltReq美元){ 如果才能(is_array (StrFiltValue美元)){ 美元,才能StrFiltValue=https://www.yisu.com/zixun/implode (StrFiltValue美元); } 如果(preg_match (“/? ArrFiltReq美元。“/?StrFiltValue美元)==1){ 味精美元="
操作IP:“$ _SERVER (“REMOTE_ADDR”)。“
操作时间:“。Y strftime (“% - % - % d % H: % m: % S”)。”
操作页面:“。$ _SERVER (“PHP_SELF”)。”
提交方式:“。$ _SERVER (“REQUEST_METHOD”)。”
提交参数:“StrFiltKey美元。”
提交数据:“StrFiltValue美元; 美元$ this -> wlog(味精); 美元$ this -> showmsg(味精); 退出(); } } 函数filter_value_for_sql (str) { $ str=str_replace(”和“,”str美元); $ str=str_replace(“执行”、“str美元); $ str=str_replace(“更新”、“str美元); $ str=str_replace(“数”、“str美元); $ str=str_replace(“空空”、“str美元); $ str=str_replace(“中期”、“str美元); $ str=str_replace(“主”、“str美元); $ str=str_replace(“截断”、“str美元); $ str=str_replace(“字符”、“str美元); $ str=str_replace(“声明”、“str美元); $ str=str_replace(“选择”、“str美元); $ str=str_replace(“创造”、“str美元); $ str=str_replace(“删除”、“str美元); $ str=str_replace(“插入”、“str美元); $ str=(“”、“”大小写不敏感,str美元); $ str=(大小写不敏感”“、”“str美元); $ str=str_replace (“”、“”, str美元); str=str_replace美元(美元”或“、”“str); $ str=str_replace (“=薄ⅰ皊tr美元); $ str=str_replace (“”、“”, str美元); 返回str美元; }//类结束 }php中参数过滤与数据过滤的区别是什么