Home  >  Article  >  Backend Development  >  PHP anti-injection and character anti-filtering code_PHP tutorial

PHP anti-injection and character anti-filtering code_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 17:09:371014browse

好了为php开发者提供了一款php sql 防注入与字符过滤以及各种过滤代码哦。

好了为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 "";exit;}}
*/
//==防注[inject_check($sql_str)]==========================================================================================
function inject_check($sql_str){
if (eregi('select|insert|update|delete|union|into|load_file|outfile', $sql_str)){echo "";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","
",$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 "";exit;}
}
return $string;
}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/629745.htmlTechArticle好了为php开发者提供了一款php sql 防注入与字符过滤以及各种过滤代码哦。 好了为php开发者提供了一款php sql 防注入与字符过滤以及各种过滤...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn