私はw3schoolsウェブサイトhttp://www.w3schools.com/php/php_file_upload.aspからmove_uploaded_file()PHPスクリプトをテストしています。 ここに私のコードです。php move_uploaded_file()
if ($_FILES["file"]["size"] < 2000000)
{
if ($_FILES["file"]["error"] > 0)
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"]/1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
if (file_exists("/var/www/upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
elseif(move_uploaded_file($_FILES["file"]["tmp_name"], "/var/www/upload/".$fileName))
echo "Stored in: " . "/var/www/upload/".$fileName;
}
}
else
echo "Invalid file";
問題は、すべての時間if(move_uploaded_file($_FILES["file"]["tmp_name"],"/var/www/upload/".$fileName))
はfalseを返しますが、ファイル(例:/tmp/php8rrKoW
)サーバー上のtmp
のフォルダに格納されているようです。 tmp
フォルダをチェックすると、そのファイルは存在しません。 (スクリプトが実行された後に削除されるはずです)/php8rrkoW
フォルダも表示されません。私はそれがそこにあるはずだと確信していません。 tmp
フォルダと/var/www/upload/
の両方の許可をchmod
を使用して777
に設定しましたが、所有者をapache
に設定する必要があるかどうかはわかりません。だから私はファイルが/var/www/upload
にコピーされていないことを知りたいし、もしこれをテストする方法があるなら。
http://w3fools.com/ – Marty
error_reporting(E_ALL)を有効にしましたが、どのようなエラーが表示されていますか? –
'<?php file_put_contents( '/ var/www/upload/test.txt'、 'test');'で 'index.php'をリクエストしてみてください。エラーが表示され、ファイルが正常に作成されていますか? – Casey