私は CodeIgniter と特に Ion Auth の初心者です。ユーザー、モデレーター、管理者の 3 層のユーザーを持つ Web サイトを構築しています。私の目的は、このコード スニペットを使用することです。
if (!$this->ion_auth->in_group('moderator'))
{
//redirect them to the because they must be a moderator
redirect($this->config->item('base_url'), 'refresh');
}
アクセスを許可する前に、ユーザーが管理者であるかどうかを確認します。
「グループ」テーブルを次のように編集しました。
(ID、名前、説明) admin 管理者 1 名、一般ユーザー 2 名、モデレーター 3 名 モデレーター
また、'user_groups' テーブルの 1 人のユーザーを更新して、'group_id' を '3' にしました。
ただし、コードをテストすると、管理者は常にページを表示できますが (これは問題ありません)、モデレーターはリダイレクトされます。
ion_auth ライブラリ ファイルやモデルは何も変更していませんが、MySql がロードされるのを好まなかったため、すべてのテーブルを手動で作成して挿入しました。
編集:「users_group」テーブルの「group_id」を変更してユーザーを管理者に昇格させようとしたところ、Web サイトがそれらを管理者として認識しないため、データベースに接続されている可能性があると思います。ただし、エラーは発生していませんが、私のコードは管理者以外を認識していません。
どうぞよろしくお願いいたします。