php 防注入与字符反过滤代码
好了为php开发者提供了一款php sql 防注入与字符过滤以及各种过滤代码,实例如下:
//==防注入自动过滤[启用后程序效率低]== /* function inject_checks($sql_str){return eregi('select|insert|update|delete|'|/*|*||./|union|into|load_file|outfile', $sql_str);} foreach ($_REQUEST as $value){if (inject_checks($value)){echo "<script language=javascript>alert('你提交的数据非法,请检查后重新提交!');</script>";exit;}} */ //==防注[inject_check($sql_str)]========================================================================================== function inject_check( $sql_str ){ if ( eregi ( 'select|insert|update|delete|union|into|load_file|outfile' , $sql_str )){ echo "<script language=javascript>alert('你提交的数据非法,请检查后重新提交!');</script>" ; exit ;} return $sql_str ; } //==字符过滤[safe_convert($string)]============================================================================== function safe_convert( $string ){ //Words Filter if (get_magic_quotes_gpc()){ //转义字符 加上反斜线 $string =htmlspecialchars( $string , ENT_QUOTES); //将特殊字元转成HTML字串格式如 "&"转成"&" $string = str_replace ( "<" , "<" , $string ); //替换 $string = str_replace ( ">" , ">" , $string ); //替换 $string = str_replace ( "\" , '\' , $string ); //替换 } else { $string = addslashes ( $string ); //转义字符 加上反斜线 //$string=stripslashes($string); //去掉反斜线 $string = str_replace ( "\\" , '\' , $string ); } //$string=str_replace("r","<br/>",$string); //换行 //$string=str_replace("n","",$string); //空格 $string = str_replace ( "t" , " " , $string ); //空格 $string = str_replace ( " " , " " , $string ); //空格 //$string=str_replace('|', '|', $string); //替换 同分类系统有冲突 $string = str_replace ( "&#96;" , "`" , $string ); //替换 $string = str_replace ( "&#92;" , "\" , $string ); //替换 return $string ; } //==字符反过滤[unsafe_convert($string)]============================================================================== function unsafe_convert( $string ){ //Words Filter $string = str_replace ( "\"" , """ , $string ); //替换 return $string ; } //==字符过滤[filter($string)]============================================================================================ function filter( $string ){ //Words Filter include ( "Filter.php" ); //词汇过滤列表 foreach ( $badwords as $badword ){ if ( stristr ( $string , $badword )==true){ echo "<script language=javascript>alert('警告:你提交的内容含有敏感字眼,请更换内容。');</script>" ; exit ;} //开源代码phpfensi测试数据 } return $string ; }查看更多关于php 防注入与字符反过滤代码 - php函数的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did30775