@Dark_Dante

Как прибить сессию забаненного пользователя?

Здравствуйте.
Есть приложение на CodeIgniter, где регистрируются юзеры.
Есть таблица в бд где данные юзера хранятся.
У каждого юзера есть Role - авторизованный, модератор, администратор, забаненнный, удален.
После авторизации данные юзера переносятся в сессию, где и "живут".
Допустим я как администратор хочу забанить пользователя. Меняю ему Role на "забанен".
Но получается что юзер сможет писать комментраии и вести себя как обычный пользователь, пока его сессия не истечет.
Можно конечно на каждый чих пользователя дергать базу на предмет проверки Role и если Role в сессии не совпадает с Role в базе, прибить сессию. Но тогда теряется весь смысл хранения данных юзера в сессии.
Подскажите пожалуйста, как правельнее реализовать данную штуку?
  • Вопрос задан
  • 280 просмотров
Решения вопроса 1
Rikcon
@Rikcon
В конструкторе контроллера от которого вы наследуетесь делаете проверку на role!=$session_role
и ресетаете сессию если оно true.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы