システム全体はコーディングに PHP のみを使用しており、JS や正規表現は使用していません...純粋な PHP...実際、他には何も知りません...以下は元の形式の HTML コーディングです。 .. アップロード ファイル フォーム コードをコピー コードは次のとおりです: マップ名: ファイル パス: 🎜> ; フォーム内の enctype="multipart/form-data" の意味は、フォームの MIME エンコーディングを設定することです。デフォルトでは、このエンコード形式は application/x-www-form-urlencoded であり、ファイルのアップロードには使用できません。multipart/form-data が使用される場合にのみ、ファイル データが完全に転送され、次の操作が実行されます。 ="multipart/form -data" はバイナリ データをアップロードするためのもので、フォーム内の値はバイナリ ストリームで渡されます。 この文は役に立たないようです...アップロード ファイルのサイズを制限できるのではないかと思いました。アップロード ファイルのサイズは php でのみ使用できます。 ini または後でアップロードするファイルのスクリプト内で... 私のプログラムでは、php.ini で Upload_max_filesize=6M を直接設定しました。以下はアップロード プログラムですコード コードをコピー コードは次のとおりです。 $uploaddir="./map/" $typearr=array("rar","zip) ", "w3m","w3x"); $findstr=array("/","\"," ","<",">"); //フィルター名$mapname =str_replace($findstr,'',($_POST['mapname'])); //拡張子を取得します function upfiletype($filename){ $arr=explode('.', $filename); $a=count($arr)-1; return $arr[$a]; // 文字列は純粋な数値ですか?関数は No ( $str){ $intarr=array('1','2','3','4','5','6','7','8','9',' 0 ','.'); $a=str_replace($intarr,'',$str); return ($a=="")?1:0; / /////ウィンドウサイズの制御/////// function html(){ echo << <br>関数 ResetSize() 🎜>self.resizeTo(300,300) <br>self.moveTo(300,200) <br>} <br> eof; } if (isNo($mapname)){ exit ('正しいマップ名が入力されました'); //アップロードされたファイルがあるかどうかを確認しますif(!is_uploaded_file($_FILES['map']['tmp_name'])){ html()>exit("アップロードされていませんfile または アップロードされたファイルは 6M を超えています"); } //繰り返しアップロードであるかどうかを判断します$clintfilename=str_replace($findstr,'',$_FILES['map'][ '名前']); if(isset($_COOKIE['upload'])){ foreach($_COOKIE['upload'] as $value){ if($value==$ clintfilename){ html (); exit("再度アップロードしないでください"); } } } $filetype=strto lower(upfiletype($_FILES[' map']['name'] )); if(!in_array($filetype,$typearr)){ html(); exit("正しいマップ ファイルをアップロードしてください。rar zip, w3m, w3x"); } //サーバー ファイルが存在するかどうかを判断します $filename=$mapname.'.'.$filetype; for($a=1;$ fopen=@fopen(($uploaddir.$filename),"r");$a ){ $filename=$mapname."$a".'.'.$filetype; fclose($fopen; ); } // ファイルの転送を開始します。 $filepath=$uploaddir.$filename; ){ //アップロードが繰り返されているかどうかを確認するために Cookie を 1 つ設定します setcookie("upload[]",$clintfilename,time() 60*12); >echo "アップロード成功"; $ log=fopen("upload.log","a7"); $logtxt=date("Ymd")."|".date("H:i") )."|".$_SERVER["REMOTE_ADDR "]."|".$filename."rn"; fwrite($log,$logtxt); ; 初めてなので文章に問題が多くて…何度も修正しながら書いてます…アドバイスお願いします。