ロールごとのユーザー インターフェイスと機能を備えた Web アプリケーションを開発しています。users
テーブルには、各ユーザーの役割を格納する列がrole
あります。enum
ログイン スクリプトで、ユーザー/パスに一致するレコードが見つかった場合、SESSION['role']
変数をレコードのロール フィールドの値に設定します。SESSION
ロールに加えて、他の変数の display_name など、いくつかのデータも保存します。次に、SESSION['role']
アプリケーション全体で使用され、正しいユーザー インターフェイスをブラウザーに送信し、アクセス ルールを適用します。
これは私のローカルホストではすべて正常に動作しますが、リモート サーバーでSESSION['role']
は初めて動作します。つまり、正しいユーザー インターフェイスがブラウザに送信されます。その後、SESSION['role']
どういうわけか別の (既存の) ロールに変更され、その結果、アクセス ルールによって機能を使用できなくなります。さらに奇妙なのは、SESSION['role']
変化するだけか、SESSION['displayname']
または元のSESSION['username']
ままであることです。
SESSION
以外の場所に変数を設定していませんlogin.php
。潜在的な原因を探す必要があるアイデアは大歓迎です。