抗注射
簡単な説明:
/****************************
手順:
渡された変数に$_POST、$_GETなどの不正な文字
が含まれているかどうかを判断します
機能:
抗注射
*******************************/
//フィルタリングされる不正な文字
$ArrFiltrate=array("'",";","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); $key=>$value) {
$ArrPostAndGet[]=$value;
}
foreach($HTTP_GET_VARS as $key=>$value){
$ArrPostAndGet[]=$value;
}
}
// 検証開始
foreach($ArrPostAndGet as $key=>$value){
if (FunStringExist($value,$ArrFiltrate)){
echo "";
if (empty($StrGoUrl)){
echo "" ;
}
exit;
}
}
?>
checkpostandget.phpとして保存します
そして、各phpファイルの前にinclude("checkpostandget.php")を追加します