完全な機能制御を備えた PHP アップロード プログラム(1)
■マスタープログラム 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, "アップ")){

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











多くのユーザーはスマートウォッチを選ぶときにファーウェイブランドを選択しますが、その中でもファーウェイ GT3pro と GT4 は非常に人気のある選択肢であり、多くのユーザーはファーウェイ GT3pro と GT4 の違いに興味を持っています。 Huawei GT3pro と GT4 の違いは何ですか? 1. 外観 GT4: 46mm と 41mm、材質はガラスミラー + ステンレススチールボディ + 高解像度ファイバーバックシェルです。 GT3pro: 46.6mm および 42.9mm、材質はサファイアガラス + チタンボディ/セラミックボディ + セラミックバックシェルです。 2. 健全な GT4: 最新の Huawei Truseen5.5+ アルゴリズムを使用すると、結果はより正確になります。 GT3pro: ECG 心電図と血管と安全性を追加

C 言語における return の使い方は、 1. 戻り値の型が void の関数については、return 文を使用して関数の実行を早期に終了することができます; 2. 戻り値の型が void ではない関数については、 return ステートメントは、関数の実行を終了するためのものです。結果は呼び出し元に返されます。 3. 関数の実行を早期に終了します。関数内で return ステートメントを使用して、関数の実行を早期に終了することもできます。関数が値を返さない場合。

Windows 11 で Snipping Tool が機能しない理由 問題の根本原因を理解すると、適切な解決策を見つけるのに役立ちます。 Snipping Tool が正しく動作しない主な理由は次のとおりです。 フォーカス アシスタントがオンになっている: これにより、Snipping Tool が開かなくなります。破損したアプリケーション: 起動時にスニッピング ツールがクラッシュする場合は、破損している可能性があります。古いグラフィック ドライバー: 互換性のないドライバーは、スニッピング ツールに干渉する可能性があります。他のアプリケーションからの干渉: 実行中の他のアプリケーションが Snipping Tool と競合する可能性があります。証明書の有効期限が切れています: アップグレード プロセス中のエラーにより、この問題が発生する可能性があります。これらの簡単な解決策は、ほとんどのユーザーに適しており、特別な技術知識は必要ありません。 1. Windows および Microsoft Store アプリを更新する

ソースコード: publicclassReturnFinallyDemo{publicstaticvoidmain(String[]args){System.out.println(case1());}publicstaticintcase1(){intx;try{x=1;returnx;}finally{x=3;}}}#出力 上記のコードの出力は、単純に次のように結論付けることができます:finally の前に return が実行されます。バイトコード レベルで何が起こるかを見てみましょう。以下は、case1 メソッドのバイトコードの一部をインターセプトし、ソース コードを比較して、各命令の意味に注釈を付けます。

今日の急速な技術発展の時代では、雨後の筍のようにプログラミング言語が出現しています。多くの注目を集めている言語の 1 つは Go 言語です。Go 言語は、そのシンプルさ、効率性、同時実行の安全性などの機能により多くの開発者に愛されています。 Go 言語は、多くの優れたオープンソース プロジェクトがある強力なエコシステムで知られています。この記事では、厳選された 5 つの Go 言語オープンソース プロジェクトを紹介し、読者を Go 言語オープンソース プロジェクトの世界へ導きます。 KubernetesKubernetes は、自動化されたオープンソースのコンテナ オーケストレーション エンジンです。

Laravel は、拡張性と効率性に優れた人気の PHP フレームワークであり、開発者が高品質の Web アプリケーションを迅速に構築できる強力なツールとライブラリを多数提供しています。その中でも、LaravelEcho と Pusher は、WebSocket 通信を簡単に実装できる 2 つの非常に重要なツールであり、この記事では、Laravel アプリケーションでこれら 2 つのツールを使用する方法について詳しく説明します。 WebSocket とは何ですか? Webソケット

現在最も人気のある Go フレームワークは次のとおりです。 Gin: 軽量で高性能な Web フレームワークで、シンプルで使いやすいです。 Echo: 高性能のルーティングとミドルウェアを提供する、高速で高度にカスタマイズ可能な Web フレームワーク。 GorillaMux: 高度なルーティング構成オプションを提供する高速で柔軟なマルチプレクサー。 Fiber: 大量の同時リクエストを処理する、パフォーマンスが最適化された高性能 Web フレームワーク。 Martini: 豊富な機能セットを提供するオブジェクト指向設計のモジュール式 Web フレームワーク。

PHP における echo キーワードの役割と使用法の詳細な説明 PHP は、Web 開発で広く使用されているサーバーサイド スクリプト言語です。 echo キーワードは、PHP でコンテンツを出力するために使用されるメソッドです。この記事では、echoキーワードの機能と使い方を詳しく紹介します。機能: echo キーワードの主な機能は、コンテンツをブラウザに出力することです。 Web 開発では、フロントエンド ページにデータを動的に表示する必要がありますが、このとき、echo キーワードを使用してデータをページに出力できます。 e
