2016-08-29 4 views
0

私の学校のサーバー上のプライベートフォルダにファイルを書き込めません。問題は自分の権利だと聞いたことがある。それともコードですか?私は、フォルダの場所が正しいと思います。サーバーにtxtファイルを書き込めません。許可されていないパス

1 $testfile = "SchoolServer/Test.txt"; 
2   
3   if (!file_exists($testfile)) 
4   { 
5    $fileoperation = "a"; 
6    $test = preg_replace('/\h+/', ' ', $test); 
7    $file = fopen ($testfile, $fileoperation); 
8    fwrite ($file, $week . "\r\n" . $test . "\r\n" . "\r\n"); 
9    fclose ($file); 
10   } 

警告::file_exists():open_basedirの制限効果で、私はいくつかのエラーを取得します。ファイル(Test.txt)が3行目のD:\ Register-test.phpの(D:\ SitesTemp)にありません。ファイル(Test.txt)が許可されたパス内にありません:D:\ Register-test.php(D:\ RegisterTemp)の7行目

警告:fopenストリームは:操作はDでは許されない:行の\登録-test.phpを7

警告:fwriteの()は、パラメータ1がDで指定されたリソース、boolean型であることを期待:ライン上の\登録-test.phpを8

警告:fcloseを()は、パラメータ1がDに与えられたリソース、boolean型であることを期待:\登録-test.phpををライン上に9

をありがとう!

+0

何を参照してください、あなたのファイルはPHPはそれを開くことができない場所に配置されているようです

$file = fopen($testfile, $fileoperation); if ($file) { fwrite($file, $week . "\r\n" . $test . "\r\n" . "\r\n"); fclose($file); } 

$ testfile = "SchoolServer/Test.txt"でフルパスを使用しています。 フルパスですか? あなたのPHPファイルでprint_r($ _ SERVER)を試しましたか? – Dharmendra

+0

これはif(!file_exists($ testfile))内に書かれています ファイルが存在するかどうかを確認することが目的です。そうでなければ、それを書きます。既に存在する場合は、上書きしませんが、既存のファイルにコンテンツを追加します – Pandara

+0

[ストリームを開くことに失敗しました:そのようなファイルまたはディレクトリはありません](http://stackoverflow.com/questions/36577020/failed- to-open-stream-no-such-file-or-directory) –

答えて

0

あなたがそれを返すかをテストする必要があり、関数fopenが失敗したようだ。また、here

+0

これは何も返しません。そのコマンドのエラーメッセージはありません – Pandara

+0

リソースが失敗した場合はfalseを返します。 fwriteまたはfcloseを使用する前に、リソースを確認しておく必要があります。この問題は、あなたのファイルがどこにあるのか、あなたのPHPスクリプトと同じディレクトリに置いて、それが動作しているかどうかを調べるために来ているようです。 – vincenth

+0

私は同じフォルダに入れようとしました。同じ問題。また、txtファイルを私のデスクトップに運がなければ書いてみました。 – Pandara

関連する問題