首頁 php教程 php手册 经典php防注入函数代码

经典php防注入函数代码

May 25, 2016 pm 04:40 PM

<?php
/*************************
    说明:  
    判断传递的变量中是否含有非法字符  
    如$_post、$_get  
    功能:  
    防注入  
    **************************/
//要过滤的非法字符  这个过滤的字符 还可以增加
$arrfiltrate = array(
    "&#39;",
    ";",
    "union"
);
//出错后要跳转的url,不填则默认前一页
$strgourl = "";
//是否存在数组中的值
function funstringexist($strfiltrate, $arrfiltrate) {
    foreach ($arrfiltrate as $key => $value) {
        if (eregi($value, $strfiltrate)) {
            return true;
        }
    }
    return false;
}
//合并$_post 和 $_get
if (function_exists(array_merge)) {
    $arrpostandget = array_merge($http_post_vars, $http_get_vars);
} else {
    foreach ($http_post_vars as $key => $value) {
        
        $arrpostandget[] = $value;
    }
    foreach ($http_get_vars as $key => $value) {
        $arrpostandget[] = $value;
    }
}
//验证开始
foreach ($arrpostandget as $key => $value) {
    if (funstringexist($value, $arrfiltrate)) {
        echo "<script language="网页特效">alert("非法字符");</script>";
        if (emptyempty($strgourl)) {
            echo "<script language="javascript">history.go(-1);</script>";
        } else {
            echo "<script language="javascript">window.location="".$strgourl."";</script>";
        }
        exit;
    }
}
登入後複製


本文地址:

转载随意,但请附上文章地址:-)

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)