>백엔드 개발 >PHP 튜토리얼 >php防sql注入程序代码_PHP教程

php防sql注入程序代码_PHP教程

PHP中文网
PHP中文网원래의
2017-03-19 10:34:581148검색

放到公用调用文件(如conn数据库链接文件),对所有GET或POST的数据进行过滤特殊字符串,以实现简单有效的SQL注入过滤。PHP初学者,欢迎批评指点 谢谢!

  1. [代码]简单函数加判断     

Function inject_check($sql_str) {
    return eregi('select|insert|and|or|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile', $sql_str);
}
if (inject_check($_SERVER['QUERY_STRING'])==1 or inject_check(file_get_contents("php://input"))==1){
    //echo "警告 非法访问!";
    header("Location: Error.php");
}

2. [代码](2013年12月23日更新)结合了大家的指点 改成这样 大家觉得如何?感谢大家继续批评指教!(不区分大小写的)     

Function inject_check($sql_str) {
    return preg_match('/select|insert|and|or|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile/i', $sql_str);
}
if (inject_check($_SERVER['QUERY_STRING'])==1 or inject_check(file_get_contents("php://input"))==1){
    //echo "警告 非法访问!";
    header("Location: Error.php");
    exit;
}


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.