■マスタープログラム upfile.php
#################################### ##############################
#プロジェクト名: テスト
#著者: lanf
#ホームページ: http://lanf.yeah.net
#電子メール:imbusy@ 263.net
#時間: 2001. 9
############################## ############################
## ID の検証 function
function getUserRight($username,$user){
if($username==$ user' '$user=="*") return true;
echo "この操作はありませんID の権限 href=javascript:window.history.back()>ここをクリック変更に戻る";return false;
}
##
本人確認機能終了
##
ファイルタイプ確認機能関数
getFileType
($ファイル名,$fileType){$
fileExtent
=strrchr($filename, ".") ;$fileExtent=substr($fileExtent,1); >fileExtent);$fileType
=
strto lower($fileType); if(strstr( $fileType,"jpg")|| strstr($fileType,"gif
")' '
strstr($ fileType,"png") ){if(!GetImageSize($imgfile) ) {echo "
この操作
ID では、このタイプのファイルのアップロードは許可されません。
href=javascript:window.history.back()>ここをクリックしてください変更に戻る";return false;};}; if (strstr($fileType,$fileExtent
)' '$
fileType
="*") return true;
echo "この操作IDでは、このタイプのファイルのアップロードは許可されません。href=javascript:window.history.back()>ここをクリック変更に戻る< ;/ a>";
return false;
}
##ファイルタイプ検証関数の終了
##アップロードサイト検証関数
関数 checkFromSiteErr($siteFrom ,$limitSite){
//サイトの ip アドレスを取得しますドメイン名; http://202.108.240.75 www.yyy.com
//echo $siteFrom;
$step1=substr( $siteFrom,7);//echo "<br>$step1";
$step2=strpos($step1 , "/"); //エコー "<br>$step2";
$step3=substr($step1,0,$step2) ;//echo "< ;br>$step3";
//if(エレギ("^[0-9]+.[0- 9]+.[0 -9]+.[0-9]+$",$step3)){;}else{
$referIP=gethostbyname($step3); //エコー "<br>ip:$referIP<br>";
//}
//ここで、$referIP はすでに 前のページの ip アドレス。
// は関連するコンテンツと一致します。
if(strpos($limitSite,",",1)){
//説明は次のとおりですグループ値
$pcs =explode(",",$limitSite);
while(list($key, $ value) = each($pcs)){
$limit=gethostbyname($value);
if($starPos =strpos($limit,"*")){
//IP、*number
$tempLimit=substr ($limit,0,$starPos);
$tempFromIP=substr($referIP,0,$starPos);
if($tempLimit==$tempFromIP){
return false;
}else{
Continue;
};
}else{
//番号なし * IP
if($limit==$referIP){
return false;
}else{
continue;
};
};
}
echo "アップロード サイトが間違っています #16。ここをクリックウィンドウを閉じる";戻るtrue;} else{//制限が 1 つだけであることを示します
$limit=
gethostbyname
($limitSite);if($
starPos
=strpos($limit,"*")){//
IP (*
番号$tempLimit=) substr($limit, 0,$starPos);$
tempFromIP
=substr($referIP,0,$starPos);if($
tempLimit
==$tempFromIP){return false;
}else{echo "アップロード サイトが間違っています
href
=
javascript:window.close
()>ここをクリックしてください。ウィンドウを閉じる";return true;};}else{//IP なし * 数値
if($limit==$referIP ){
return false;
}else{
echo "アップロード サイトが間違っています。 >< ;a href=javascript:window.close()>ここをクリックウィンドウを閉じる ";
return true;
};
};
}
};
##アップロードサイト認証機能終了
##ロギング関数
関数 putLog($actionID,$message,$flag="a"){
if (!file_exists("./log")){
echo "現在のディレクトリには確立された属性がありません 0777 の log ディレクトリが を作成しようとしています...";
if(@mkdir( "./log",0777)){echo "作成に成功しました!!!";}else{echo "失敗しました!権限が不十分です。 ./log <br> ログは記録されません。 ……"; return false;}}
$
logfile
="./log/".$actionID.$flag .".log"; $
cmdstr
="echo "".$message."" >> ".$ログファイル; if (!
file_exists
($ログファイル)) {パススルー("touch ".$ログファイル); >($logfile,0777);} パススルー($
cmdstr
); return true; };
##
ロギング機能
##設定ファイルパラメータの取得 function
function get_config($conf,$actionID="",$ actionType=""){
//$conf 設定ファイル名、$actionID アクションID 、$actionType ActionType
global $targetDir,$user,$maxLength,$fileType,$checkFile,$limitSite,$callback;
$actionID=trim($ actionID );
if($actionID=="") return false;
$keylength=strlen($アクションID);
$fileArray=file($conf);
$canshuZoneId=0;
if($actionType=="upload"){
// ファイルをアップロードする場合
while (list($
key,$value) = each($ fileArray)) {
$value=trim($value);
//
パラメータ領域を決定し、パラメータ抽出を ファイル転送設定エリア$
Zone_temp
=substr($value,0,1);if($
Zone_temp
=="["){//パラメータ ゾーンを開始しますif(
strstr
($value, "アップ")){