Get或Post提交值的非法資料處理
//**************************************************** ****
//-- 程式名稱:StrSwap V1.01
//-- 程式編寫:[email]cngift@163.com[/email]
//-- 完成: 2002 -8-1
//-- 程式用途:Get或Post提交值的非法資料處理
//-- 備註: 本程式需要載入在所有程式處理前使用,以便自動進行
/ /-- 程式中使用的變數的替換
//-- 由於發現嚴重BUG緊急升級
//-- Copyright By cngift ◎ 2002
//********** **********************************************
class StrSwap{
//當以Get方式提交變數時用於連接變數的連接符號
var $GetSplitStr = "&&";
var $TempArray = array();
var $VariableArray = array();
//************************************** ************************
//-- 程式名稱:Main()
//-- 程式用途:本類的預設運作方式
//-- 傳入參數:無
//************************************ **************************
function Main(){
global $REQUEST_METHOD;
if("GET"==$REQUEST_METHOD){
$this->SubGetStrToArray();
}
if("POST"==$REQUEST_METHOD){
$this->SubPostStrToArray();
}
$this->GlobalVariable();
}
}
}
}
}
}
}
//************************************************ ********
//-- 程式名稱:SubGetStrToArray()
//-- 程式用途:當變數以Get方式提交時所呼叫的方法
//-- 傳入參數:無
//***************************************** **************
function SubGetStrToArray(){
global $QUERY_STRING;
$this->TempArray = explode($this- >GetSplitStr,$QUERY_STRING);
for($i=0;$i
$temp = explode('=' ,$this->TempArray[$i]);
$this->VariableArray[$i][0] = $temp[0];
$this->VariableArray[$i][1] = $this->StrReplace($temp[1]);
}
}
//*************** *****************************************
//-- 程式名稱:SubPostStrToArray()
//-- 程式用途:當變數以POST方式提交時所呼叫的方法
//-- 傳入參數:無
//******** ************************************************
function SubPostStrToArray(){
global $_POST;
reset($_POST);
for($i=0;$i
$this->VariableArray[$i][0] = key($_POST);
$this->VariableArray[$i][1] = $this->StrReplace($_POST [key($_POST)]);
next($_POST);
}
}
//************* *******************************************
//--程式名稱:StrReplace()
//-- 程式用途:取代變數中的非法字元
//-- 傳入參數:變數值
//********** **********************************************
function StrReplace($str){
$str = StripSlashes($str);
$str = str_replace(chr(92),'',$str);
$str = str_replace(chr(47),'',$str);
$str = str_replace(chr(10).chr(13),"
",$str);
$str = str_replace( '$str = str_replace('>',">",$str);
$str = str_replace(';',";",$str );
$str = str_replace('"',"“",$str);
$str = str_replace("'","'",$str);
$str = str_replace( " "," ",$str);
$str = str_replace("/**/"," ",$str);
return trim($str);
}
//********************************************* ***********
//-- 程式名稱:GlobalVariable()
//-- 程式用途:宣告變數為全域變數方便其他程式呼叫
//--傳入參數:無
//**************************************** ****************
function GlobalVariable(){