將以下檔案儲存check.php,然後在需要檢測的頁面 require("check.php");就可,檢測的特殊字元 為: ' ; union<?php /************************* 說明: 判斷傳遞的變數中是否含有非法字元 如$_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); }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='javascript'>alert('傳遞的資訊中不得包含單引號、分號、union等非法字元');</script>"; if (empty($StrGoUrl)){ echo "<script language='javascript'>history.go(-1);</script>"; }else{ echo "<script language='javascript'>window.location='".$StrGoUrl."';</script>"; } exit; } } ?>