ここで関連するフォーラムからいくつかのヒントを調べて取得しましたが、それでも問題を解決できないため、親切に助けて投稿しています. ありがとうございます。
私は Linux ホスティングを共有しましたが、最近彼らがアップグレードを提案し、受け入れました。残念ながら、彼らは私の php アプリケーションを php バージョン 5.3 に微調整する必要があると主張しています。私のこのアプリケーションは、php バージョン 5.2 の以前のサーバーでうまく機能していました。問題は、ログインまたはログアウトの履歴、またはそのようなファイルの書き込みを登録しようとすると、ファイルのアクセス許可が拒否されたというエラーです。sample に遭遇した最初のエラーであるため、次のコードを強調表示しました。これが私のサンプルコードです。
特に file_put_contents と file_read_contents を使用します。以下は私のサンプルコードです。
// define('DATA_PATH_MEMB', dirname( __FILE__) ."/../docs/vendor/"."data/_memdata/");
// above constant is an include file
function updateLogins() {
$user = $_SESSION['thisuserName'];
$filejsonread = DATA_PATH_MEMB.$user.".dat";
$filejsonwrite = DATA_PATH_MEMB.$user.".dat";
$updateDataArr = json_decode(file_get_contents($filejsonread),true);
$timenow = array( "datetimestamp" => date("d-m-Y h:i") );
array_push($updateDataArr["useracess"][0]["history"]["logins"], $timenow);
array_push($updateDataArr["useracess"][0]["history"]["logouts"], $timenow);
file_put_contents($filejsonwrite, json_encode($updateDataArr), LOCK_EX);
}
file_put_contents を指す次のエラーが表示されます
file_put_contents(/home/mydomain/public_html/includes/../docs/gbo/data/_memdata/someusr.dat) [function.file-put-contents]: ストリームを開くことができませんでした: 許可が拒否されました
私は、自分のユーザー アカウントがファイルが割り当てられているグループの一部であり、書き込み権限があるかどうかを尋ねました。私のディレクトリは755で、ファイルは644で、以前のサーバーでは誠実にアプリケーションが機能していました。どのファイルにも書き込めない場合はどうすればよいかわかりません。
私はこれを試しました
echo exec('whomai'); // it displays nobody
私は管理者ではなくプログラマーです。彼らに何を尋ねるべきか、自分自身を正すべきか。