2013-11-11 4 views
0

У меня есть приложение, требующее входа для пользователей. Однако, чтобы все было просто, мы только предоставляем пользователю уникальный код, чтобы они просто вводили код и этот код записывал их. Этот код действителен только две недели и никогда не будет повторяться.Две страницы входа с CakePHP

Однако наш администратор также должен войти в систему, но администратор требует имя пользователя и пароль.

Как я могу изменить AppController, чтобы разрешить оба входа? Я использую плагин AclExtras для проверки подлинности

Один Войти находится под APP/Users/enter (для пользователей), а другой находится под APP/Users/login (для админов)

ответ

3

Внедрите пользовательский адаптер Auth, который проверяет токен. Нет необходимости иметь отдельное действие, за исключением того, что вы явно этого хотите.

Cake выполняет итерацию по всем загруженным адаптерам auth, поэтому вы можете иметь имя пользователя и пароль и токен в той же форме. Если адаптер регулярной формы возвращает false, но аутентификатор токена true, пользователь выполнил вход.

Check the books section about auth. У него есть вся информация, необходимая вам для понимания того, что нужно сделать.

0

Вы можете просто сделать простой, если/еще в ваш AppController проверяет, отправлено ли поле для уникального кода, если нет, то вы можете реализовать логин с именем пользователя/паролем. Во всех остальных случаях вы можете внедрить логин по уникальному коду.

+0

Ум, добавляя образец кода? Я добавил оператор if и просто изменил действие входа в зависимости от выбранной страницы. - Однако он не работает. – Albert

Смежные вопросы