Codeigniter - библиотека аутентификации или пользовательский контроллер? - PullRequest
0 голосов
/ 27 декабря 2011

Мне интересно, что лучше в моем случае.Я создаю сайт с помощью CodeIgniter с двумя основными разделами:

  • публичная часть доступна всем
  • приватная только для зарегистрированных пользователей

На каждой странице общедоступной области (один контроллер) я хочу разместить форму для входа и ссылку для регистрации, и если пользователи вошли в систему, он должен быть перенаправлен в личную зону или может быть показана ссылка на него.

Теперь у меня есть два варианта:

  1. Пользовательский контроллер - это первое, о чем я подумал, но на каждой странице сайта мне нужно контролировать, зарегистрирован ли пользователь, и это невозможноили очень плохо, так как я использую другой контроллер
  2. Итак, я начал работать над библиотекой, но я не уверен, как это реализовать (например, проверка формы должна выполняться контроллером или самой библиотекой ?,а как насчет подключения к базе данных, так как у меня нет модели?)

Как вы думаете, что лучше?Зачем?и как бы вы это реализовали?

(и да, мне нравится изобретать велосипед, а не использовать существующую библиотеку в основном потому, что я хочу научиться это делать)

Ответы [ 2 ]

0 голосов
/ 28 декабря 2011
Super Controller
            =>assign user data,settings,configs etc
      |-----private controller extends super controller
            =>check user credentials
      |-----admin controller extends super controller
            =>check user && admin credentials

Ваш суперконтроллер является вашим публичным контроллером, если вы только выполняете назначения, не проверяете ...

Все, что вам нужно, просто расширяет суперконтроллер

Все, что вам нужно, расширяет частный контроллер

0 голосов
/ 28 декабря 2011

Проверка форм и выполнение запросов должны выполняться с помощью самого контроллера. Библиотека действует как инструмент, нет необходимости реализовывать эти вещи в них, но при необходимости вы можете использовать запросы в них для проверки некоторых данных, но лучше работать в контроллерах.

Идея наличия флага журнала заключается в следующем:

  1. Когда пользователь вошел в систему, создайте сеанс для него, чтобы показать доступ.
  2. Проверяйте каждый раз сеанс на приватные части.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...