Содержание
Сайт выдуманной фирмы, осуществляющаей продажу музыкальных инструментов (IMusic).
Данный проект представляет собой простой динамичный сайт на чистом PHP вымышленной фирмы по производству, продаже и перепродаже музыкальных инструментов.
❗ Все данные на сайте недостоверны, а изображения и другие объекты, подверженные авторскому праву, не используются и не будут использованы в коммерции, а только в образовательных целях.
Данный сайт является простым и несёт по большей мере информативную функцию. Взаимодействие с пользователем не так широко. Навигация по сайту осуществляется с помощью ссылок в шапке сайта или в его подвале.
Всю информацию о компании можно посмотреть в разделе "О нас". Контакты показаны в соответсвующем разделе или внизу главной страницы. Ссылки на социальные сети можно найти ТОЛЬКО в подвале сайта и ТОЛЬКО на страницах, где этот подвал присутствует (например, на странице заявки его нет).
В разделе "Наша продукция" размещён каталог компании. Вся информация в каталоге нужна для ознакомления с примерным ассортиментом компании и с примерными ценами. Для того, чтобы сделать заказ пользователю еобходимо оформить заявку.
Для оформления заявки нужно кликнуть на соответсвующую кнопку и заполнить форму. Данные проверяются лишь на "пустоту", поэтому стоит вводить корректное имя и номер телефона. После успешного оформления заявки администраторам отправляется уведомление.
Администратор может взаимодействовать с сайтом через PhpMyAdmin, используя данные для входа, предоставленные хостингом, или через разработчика. Сайт по своим данным почти везде редактируемый только через код.
Администратор, не обладающий навыками программирования, не имеет возможности редактировать данные компании без помощи разработчика.
Заявки от пользователей можно просмотреть в PhpMyAdmin, а также при успешном оформлении заявки администраторам приходит уведомление на почты, которые нужно сообщить разработчику, чтобы он настроил отправку уведомлений.
Товары, размещённые на сайте в разделе "Наша продукция", нужны для ознакомления с примерным ассортиментом компании. Редактировать товары администратор может самостоятельно из PhpMyAdmin. Добавлять товары можно либо без изображения, либо с изображением, но с помощью разработчика.
Данный сайт разрабатывался на чистом Php 8.0 без использования сторонних библиотек. Некоторые методы решения каких-либо задач могут быть не совсем идеальными.
Сайт не защищён ничем. Нет даже csrf защиты. Хотя, может она здесь и не нужна.
База данных - MySQL 8.0
Настройки сайта находятся в файлах /incs/data.php
и /incs/database.php
. В них можно поменять настройки подключения к БД, email-адреса для отправки уведомлений и параметры форм.
Сайт не имеет какой-либо "многоэтажной" структуры страниц.
Главная страница
О нас
Наша продукция
Контакты
Оставить заявку (форма)
Сайт имеет довольно простую файловую структуру, так как не использует фреймворков и сторонних библиотек.
/incs (папка, содержащая в себе общие для всего сайта программные файлы)
├data.php
├database.php
└functions.php
/media (папка, предназначенная для хранения файлов из базы данных)
└...
/snippets (в данной папке находятся шаблоны, повторяющиеся на страницах сайта)
└...
/static (папка для хранения статических файлов)
├/css
└...
├/img
└...
└/js
└...
about.php
catalog.php
contacts.php
index.php
README.md
requisition.php
-
PHP версии 8.0
-
База данных - MySQL версии 8.0
-
Фреймворки и библиотеки отсутствуют
Имя базы данных изменять можно, но конфигурацию сайта придётся изменить соответствующим образом в файле /incs/database.php
.
Именя таблиц изменению подлежат, но уже в файле /incs/functions.php
придётся изменить соответствующие функции create_requisition
или get_products
.
База данных - musicalinstrumentfirm
Таблицы - requisitions
, products
requisition
- таблица заявок:
id
- BIGINT - PRIMARY - AUTO_INCREMENT - Необходимый уникальный ключ id.time
- DATETIME - on update CURRENT_TIMESTAMP - Время создания заявки.user_name
- TEXT - utf8_general_ci - Имя пользователя.user_phone
- TEXT - utf8_general_ci - Номер телефона пользователя.user_ip
- TEXT - utf8_general_ci - IP-адрес пользователя.
products
- таблица товаров:
id
- BIGINT - PRIMARY - AUTO_INCREMENT - Необходимый уникальный ключ id.name
- VARCHAR(256) - UNIQUE - Уникальное название товара.short_description
- TEXT - utf8_general_ci - Краткое описание товара на обложке.description
- TEXT - utf8_general_ci - Полное описание.price
- INT - Цена товара "от".image
- VARCHAR(1024) - utf8_general_ci - Путь к изображению товара относительно корня сайта. Обычно медиа-файлы сохраняются в папку media. А для товаров имеется папка products_images/