1

ファイルをウェブサーバーにアップロードするための独自のアップロード スクリプトを作成しています (小さなフラッシュ ビデオなど)。ただし、機能していないようです。ただし、Wordpress 経由でサーバーにファイルをアップロードすることはできるので、PHP ではないと思います。

アップロードフォームは次のとおりです。

 <form enctype="multipart/form-data" action="upload.php" method="POST">
   Video: <input name="vid" type="file" />
   <br/>
   Name: <input name="title" type="text" />
   <br/>
   Description:
   <br/>
   <br/>
   <textarea name="desc">Your description here</textarea>
   <br/>
   <br/>
   <input type="submit" value="Upload" />
   </form> 

アップロード PHP ページは次のとおりです。

<?php

 $target = basename( $_FILES['uploaded']['name']) ; 
 $ok=1; 


 //check that $ok was not set to 0 by an error 
 if ($ok==0) 
 { 
 Echo "Sorry your file was not uploaded"; 
 } 

 //If everything is ok we try to upload it 
 else 
 { 
 if(move_uploaded_file($_FILES['uploaded']['tmp_name'], $target)) 
 { 
 echo "The file ". basename( $_FILES['uploadedfile']['name']). " has been uploaded"; 
 } 
 else 
 { 
 echo "Sorry, there was a problem uploading your file."; 
 } 
 } 
?>

php.ini で最大アップロード サイズを 100MB に設定しましたが、アップロードは失敗します。私の php.ini ファイルは、こちらの pastebinで見ることができます。また、アップロード スクリプトが機能するかどうかを確認するために、すべての検証を削除したことにも注意してください。

4

2 に答える 2

1

コードの外観から、実行中のスクリプトと同じディレクトリにファイルをアップロードしています。そのディレクトリ内の Web サーバーに対する書き込み権限を持っていますか?

一時ディレクトリにファイルをアップロードしてみてください。

move_uploaded_file($_FILES['uploaded']['tmp_name'], sys_get_temp_dir().DIRECTORY_SEPARATOR.$target);

そして、それが機能するかどうかを確認します

アップデート

入力ファイル「vid」を呼び出していますが、「アップロードされた」入力にアクセスしようとしています。

すべての $_FILES オカレンスを $_FILES['vid'][]... に置き換えます。

マシンでエラー報告を有効にする

于 2012-09-03T13:26:10.097 に答える