同じフォルダーにあるファイルにphpファイルを書き込もうとしています。PHPファイルとファイルの両方が、アクセス許可を777(Linuxサーバー)に設定するために書き込もうとしているファイルと、それらが存在するフォルダーです。「w」または「w +」モードでfopen()を呼び出すたびに、関数は false を返すだけです。私の学校のWebサーバー上にあるため、ルートアクセスを取得してファイルの所有者をApacheと同じユーザーに変更する方法はありません。誰が何が悪いのか知っていますか?
更新:テストとして、私はこのコードを使用していました:
$handle = fopen("test.txt", 'w');
if($handle === FALSE)
echo "\nfailed";
else
echo "\nsuccess";
fclose($handle);
エラー報告が有効になっている出力は次のとおりです。
Warning: fopen(test.txt) [function.fopen]: failed to open stream: Permission denied in /<snip>/public_html/test.php on line 58
failed
Warning: fclose(): supplied argument is not a valid stream resource in /<snip>/public_html/test.php on line 63
その上に、テキスト ファイルのアクセス許可をチェックする fileperms() 関数とそのレポート -rwxrwxrwx の PHP Web サイトからコピーしたコードがあります。
関連ファイルの ls -al 出力は次のとおりです。
ls -al *test*
-rwxrwxrwx 1 mag5 30 1475 Dec 9 00:02 test.php*
-rwxrwxrwx 1 mag5 30 8 Dec 8 14:54 test.txt*
また、これが問題かどうかはわかりませんが、私の学校では Andrew File System ( http://en.wikipedia.org/wiki/Andrew_File_System ) と呼ばれるものを使用しています。