1

わかりましたので、Web サイトで簡単なアップロード システムを構築する方法を教えてくれるチュートリアルに従いました。代わりにエラーが発生しています...

ユーザーがアップロードするファイルを選択できるフォームがあります。

<form enctype="multipart/form-data" action="studentAccess/files/uploader.php" method="POST">

    <input type="hidden" name="MAX_FILE_SIZE" value="100000" />

    Choose a file to upload: <input name="uploadedfile" type="file" /><br />

    <input type="submit" value="Upload File" />

</form>

そして、すべての作業を行うはずのこの PHP スクリプト。今、私はチュートリアルで少し混乱しています.このスクリプトを2つの異なるファイルに分割する必要があるのか​​ 、それとも現在と同じファイルにする必要があるのか​​ わかりません.

<?php

// Where the file is going to be placed 
$target_path = "/studentAccess/uploads/";

/* Add the original filename to our target path.  
Result is "uploads/filename.extension" */
$target_path = $target_path . basename( $_FILES['uploadedfile']['name']); 

$target_path = "/studentAccess/uploads/";

$target_path = $target_path . basename( $_FILES['uploadedfile']['name']); 

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
    echo "The file ".  basename( $_FILES['uploadedfile']['name']). 
    " has been uploaded";
} else{
    echo "There was an error uploading the file, please try again!";
}

?>

上記のスクリプトは、FilesstudentAccess 内にあるフォルダー内に配置されます。

アップロードしたファイルを保存したいフォルダーは、studentAccess 内にあり、呼び出されますuploads

studentAccess
  |
  | files 
  | |
  | | uploader.php *this is where the script is located to upload file*
  | |
  | uploads
  | |
  | | *this is the folder where I want to store the uploaded files*
  | |

上記は、すべてが配置されているフォルダーのレイアウトです。これを含める理由は、正しくレイアウトされているかどうかわからないためです。uploader.phpファイルは、アップロードが保存されているのと同じフォルダーにある必要がありますか ?

スクリプトを実行すると (つまり、フォームを使用してファイルをアップロードし、[ファイルのアップロード] ボタンをクリックすると)、ブラウザー ウィンドウに直接表示される 3 つのエラーが表示されます。

Warning: move_uploaded_file(/studentAccess/uploads/NHSHandbook1314.doc) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/www/usd309bands.org/studentAccess/files/uploader.php on line 14

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpRpP6uz' to '/studentAccess/uploads/NHSHandbook1314.doc' in /home/www/usd309bands.org/studentAccess/files/uploader.php on line 14

そして最後に、スクリプト自体によって生成されるエラー

There was an error uploading the file, please try again!

アップロードされたファイルをアップロードフォルダーに移動する際に問題があるようです。しかし、問題を解決するために何をする必要があるのか​​ 本当にわかりません。私は確認しfile_uploads、サーバー内でオンになっています。

助けを得るのに十分なほど詳細に質問を説明したことを願っています。読みやすい形でまとめていただければ幸いです。私は本当に助けが必要です。

4

1 に答える 1

0

フォルダの許可制限である可能性があります。ターゲット フォルダを 777 (ftp プログラムを介して読み取り - 書き込み - 実行) にしてみて、動作するかどうかを確認してください。move_uploaded_file メソッドではなく、php の ftp 関数を使用してファイルをアップロードすることを強くお勧めします。

アップデート

$target_path = "/studentAccess/uploads/"; からターゲット パスを変更してみてください。to $target_path = "../uploads/";

于 2013-08-29T20:50:15.480 に答える