ホームページ > php教程 > php手册 > 完全な機能制御を備えた PHP アップロード プログラム(1)

完全な機能制御を備えた PHP アップロード プログラム(1)

WBOY
リリース: 2016-06-21 09:02:20
オリジナル
945 人が閲覧しました

マスタープログラム 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 "
現在のディレクトリには確立された属性がありません 0777log ディレクトリが を作成しようとしています...";

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, "アップ")){



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート