2011-08-10 9 views
3

は、私は次のコードを持っています! PHPのアップロードの問題

を/ tmp/php9Khayp

が、/ tmpに私はこのファイルを見つけることができません:ファイルがアップロードされる一時ファイルです。私はUbuntu 10.10で作業しています。誰が私に問題がどこにあると言うことができますか?

のapacheのerror.log:[Wed Aug 10 20:54:17 2011] [error] [client ::1] PHP Warning: move_uploaded_file(/var/www/train/ch5/images/phizsscore.gif): failed to open stream: Permission denied in /var/www/train/ch5/addscore.php on line 22, referer: http://localhost/train/ch5/addscore.php [Wed Aug 10 20:54:17 2011] [error] [client ::1] PHP Warning: move_uploaded_file(): Unable to move '/tmp/phpmkZEr3' to '/var/www/train/ch5/images/phizsscore.gif' in /var/www/train/ch5/addscore.php on line 22, referer: http://localhost/train/ch5/addscore.php [Wed Aug 10 20:54:18 2011] [error] [client ::1] File does not exist: /var/www/favicon.ico

答えて

2

はあなたのコードで/ tmpにファイルを書き込む権限を持っていますか?

Apacheのエラーログに何か言われますか?

+0

どうすればいいですか? – user873286

4

あなたはタイプミスがあります。 $targe$targetである必要があります。

move_uploaded_file($_FILES['screenshot']['tmp_name'], $targe) 
       ---------------------------------------^^^^^^ 

そうでない場合、あなたはそれが唯一のPHPスクリプトの存続期間を通じて持続するので/tmpでファイルを見ることができることはありません。スクリプトの実行が完了すると、ファイルがクリーンアップされます。 move_uploaded_file()への正常な呼び出しが行われない限り、スクリプトが終了した後でディスクにアクセスすることはできません。

UPDATE

$target変数は問題ではない場合は、Apacheウェブサーバのユーザ(WWW-データ、HTTPD、Apacheはpossibilitesている)ことを確認して、あなたの目標/var/www/train/ch5/images/への書き込みアクセス権を持っている:

# assuming the Apache user is apache... 
sudo chown root:apache /var/www/train/ch5/images/ 
sudo chmod g+rwx /var/www/train/ch5/images/ 
+0

$ targetは問題ありません – user873286

+0

@ user873286 apacheがあなたのターゲットフォルダに書き込めることについての私の更新を見てください。 –

+0

結果がありません私もrootユーザーで試したことがあります! – user873286

関連する問題