<?php include_once $_SERVER['DOCUMENT_ROOT'].'/chat/createbase.php'?>
Вставляем в самый верх. Получится:
Листинг 11. Тестируем контроллер 1
<?php include_once $_SERVER['DOCUMENT_ROOT'].'/chat/createbase_controller.php'?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>News</title>
</head>
<body>
<p>Значимость этих проблем настолько очевидна, что начало повседневной работы по формированию позиции способствует
подготовке и реализации новых предложений!
<br>
Значимость этих проблем настолько очевидна, что повышение уровня гражданского сознания влечет за собой процесс
внедрения и модернизации модели развития.
<br> Практический опыт показывает, что рамки и место обучения кадров способствует повышению актуальности
соответствующих условий активизации.</p>
</body>
</html>
Запускаем сайт, в случае с Open Server просто кликаем по его названию в выпадающем меню. Должно получиться следующее
Рис. 14. Вывод формы создания администратора
Появляются сообщения о том, что БД и таблицы созданы и затем выводится форма для задания логина и пароля администратора модуля.
Вводим свой логин и пароль, отправляем. Получается:
Рис. 15. Работа сайта
Мы видим содержание сайта, значит все прошло успешно и контроллер 1 свою функцию выполнил. Можете войти в phpMyAdmin и проверить таблицы и записи.
9. Контроллер 2. описание
Контроллер 2 будет заниматься администрированием пользователей: регистрацией, авторизацией и распределением прав. Исходя из этого он должен предоставить пользователю необходимый интерфейс. В состав интерфейса будут входить управляющие кнопки:
• Авторизация – отвечает за вход в модуль для возможности оставления комментариев ;
• Регистрация – установка параметров авторизации нового пользователя;
• Кабинет – отвечает за вход в личный кабинет пользователя;
• Выход.
Контроллер должен обеспечивать вход в личный кабинет пользователя и предоставлять ему возможности для изменения и управления данными.
В данном случае достаточно двух основных ролей пользователя: «admin» и «user». «admin» может управлять добавлением, редактированием и удалением любых пользователей, имеет доступ для редактирования и удаления всех комментариев и ответов на них, «user» имеет те же возможности, но только для себя.
Есть также дополнительный резервный профиль «Site Administrator» он не активирован.
Перед написанием кода контроллера необходимо создать файлы его окружения.
9.1 Файлы окружения контроллера 2
9.1.1 Личный кабинет
Создаем в папке «admin» файл «index.php». Это будет страница администрирования модуля, на которой будут располагаться ссылки на соответственные разделы.
Листинг 12. index.php Путь: /news/chat/admin/index.php
<?php
/* Проверяем уровень доступа к странице */
include_once $_SERVER['DOCUMENT_ROOT'] . '/chat/admin/access.php';
if (!userIsLoggedIn()) {
include $_SERVER['DOCUMENT_ROOT'] . '/chat/admin/form_login.php';
exit();
}
if (!userHasRole('admin') and !userHasRole('user')) {
$error = 'Вход только для администратора';