Основи на работата със Zend Framework (3

Да се ​​научим да работим със Zend_Auth

  1. id INT NOT NULL - уникален идентификатор;
  2. потребителско име VARCHAR (255) NOT NULL - поле за съхранение на потребителското име;
  3. парола VARCHAR (255) NOT NULL - поле за съхранение на паролата. Внимание: в този урок ще съхраняваме паролата в обичайната й форма без никакви md5, соли и други подобни, за да улесним разбирането как работи Zend_Auth;
  4. роля VARCHAR (255) NOT NULL - поле, използвано за съхраняване на ролята на потребителя;

Поставете този код във вашия phpMyAdmin и таблицата ще бъде създадена безопасно:

Сега бих искал да се спра на четвъртото поле, което ще съдържа името на ролята, на която принадлежи този или онзи потребител. В нашия пример ще имаме един потребител на име admin, admin admin и role admin:)

За да покажем как работи Zend_Acl, имаме нужда от друг потребителски тип. Те ще бъдат редовен посетител на нашия сайт - гост, но повече за това по-късно.

За да влезете в системата и да можете да добавите любимите си филми, администраторът трябва да попълни полетата за формуляри, които все още нямаме. Така че нека го създадем: отворете командния ред или конзолата, отидете в главната директория на вашия сайт и въведете следната команда:

Този ред ще създаде нов файл в папката за приложения/формуляри. Отворете новоизсечения файл, за да създадете администраторска форма за вход. Ето какво ще сложим там:

Преминахме подробно работата с формуляри в последния урок, така че за тези, които са назад, ви съветвам да го гледате. Ще ви кажа накратко какво правим тук: създайте формуляр, състоящ се от две текстови полета за вход и парола, както и бутон за изпращане, когато щракнете върху което, администраторът ще бъде проверен.

Сега в папката за приложения/контролери имате нов контролер с набор от действия. Първото действие, което ще приложим, ще бъде влизане:

За да създадете обект Zend_Auth, е достатъчен следният запис: Zend_Auth: getInstance (); След това, използвайки прост метод за удостоверяване, можем да проверим автентичността на въведените данни. За да получим резултата, можем да използваме метода isValid ().

Сега е моментът да покажете формуляра на потребителите. Добавете следния код към вашия файл login.phtml, намиращ се на application/views/scripts/auth:

За да предотвратим придържането на потребителя към белия екран при въвеждане на индексното действие на контролера за удостоверяване, нека направим пренасочване: