Необходимо, на чистом PHP без использования сторонних библиотек, реализовать приложения для управления записью посетителей на фильмы в одном кинотеатре.
В функционале обязаны присутствовать:
- Добавление, Вывод, Редактирование и удаление фильмов администратором.
- Просмотр кол-ва купленных билетов на сеанс для администратора.
- Вывод фильмов и сеансов посетителям портала.
- Запись на сеанс посетителя по эмейлу и номеру телефона.
На странице списка фильмов выводится слайдер “популярное” из 5 самых посещаемых фильмов. Ниже - записи в порядке давности публикации, которые должны содержать название, постер к фильму, короткий текст описания(обрезка 100 символов), дату публикации, и ссылку для перехода на полную запись.
На странице фильма выводится все возможные сеансы на текущий момент. По клику на которой открывается форма с доступными местами и формой для записи на сеанс по эмейлу посетителя и номеру телефона.
В кинотеатре сеансы проходят каждый день в 10, 12, 14, 16, 18, 20 часов. В зале кинотеатра 5 рядов по 10 мест.
Выбор способа хранения информации и визуальной составляющей на усмотрение кандидата.
Предоставить задание в открытом репозитории, с доступной документацией по установке и настройке.
Срок выполнения до 5 дней.
- PHP 7.3.11 (cli) (built: Oct 24 2019 11:29:42) ( NTS )
- laravel valet
- nginx+php
- Mysql
- SublimeText
- SequelPro
Необходимо создать БД. Или импортировать вместе с данными: film-session\db\films_2020-03-06.sql
.
В файле: film-session\db\db.php
, указать параметры подключения:
private $DB_HOST = '127.0.0.1';
private $DB_NAME = 'films';
private $DB_USERNAME = 'root';
private $DB_PASSWORD = '372423';
Возможно для nginx, необходимо прописать:
location / {
try_files $uri $uri/ /index.php?$query_string;
}
-
clients Таблица клиентов
-
films Таблица списка фильмов
-
places Таблица номеров мест с привязкой к рядам
-
rows Таблица рядов мест
-
session_times Таблица времени на сеансы
-
sessions Таблица списка записей на сеансы, с привязкой к таблицам: Времени сеансов, Клиентов, Фильмов, Места.
На главной странице Доступен слайдер ТОП фильмов, сортировка по количеству занятых мест в зале. По переходу на страницу Фильма, доступна возможность выбора времени сеанса, места, Имя, Телефон, email. Если такой пользователь уже есть по email/телефону - он будет использован, если нет - будет создан новый.
По переходу по ссылке в админку - доступны:
- Список забронированных мест с привязкой к фильму, клиенту
- Список фильмов с возмжностью CRUD: создание/редактирование/удаление (с каскадным удалением в списке заказов) и загрузкой постер/изображения
- Список рядов и мест
- Список времени