送信された値の取得または投稿の不正なデータ処理
//*************************************************** * ****
//-- プログラム名: StrSwap V1.01
//-- プログラム作成: [email]cngift@163.com[/email]
//-- 完了: 2002 -8-1
//-- プログラムの目的: Get または Post 送信された値の不正なデータ処理
//-- 注: このプログラムは、すべてのプログラム処理の前にロードして使用する必要があります。自動的に実行されます
/ /-- プログラム内で使用されている変数の置き換え
//-- 重大なバグ発見による緊急アップグレード
//-- Copyright By cngift ◎ 2002
// ********** *************************************** ********
class StrSwap{
//Get モードで変数を送信するときに変数を接続するために使用されるコネクタ
var $GetSplitStr = "&&";
var $TempArray = array();
var $VariableArray = array();
//********************** ********** ************************
//-- プログラム名: Main()
//-- プログラムの目的: このカテゴリ デフォルトの実行モード
//-- 受信パラメータ: なし
//********************** ******** *****************************
関数 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 = 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(){
for($i=0;$ i
global $$this->VariableArray[$i][0];
${$this->VariableArray[ $i][0]} = $this->VariableArray[$i][1];
}
}
}
? >