Назад на сайт-визитку

дипломный проект · интернет-магазин оздоровительных услуг

MedOil — веб-сайт оздоровительных услуг и продукции

MedOil — учебно-боевой проект интернет-магазина, где пользователь может посмотреть каталог оздоровительных товаров, собрать корзину, оформить заказ и записаться на консультацию. Для владельца есть админ-панель с управлением товарами, заказами и заявками.

PHP MySQL JavaScript Tailwind CSS Alpine.js Apache / Open Server
MedOil — каталог
MedOil — личный кабинет
MedOil — главная
MedOil — админ-панель

Цель проекта

Основная цель — разработать работающий прототип интернет-сервиса для компании оздоровительных услуг, через который клиент может:

  • посмотреть каталог товаров и услуг;
  • добавить позиции в корзину и оформить заказ;
  • записаться на консультацию к специалисту;
  • видеть свои заказы в личном кабинете.

Со стороны владельца проекта система должна позволять:

  • управлять товарами и услугами через админ-панель;
  • просматривать заказы и менять их статусы;
  • получать заявки на консультацию и работать с ними;
  • хранить базу клиентов, заказов и записей в одной БД.

Функциональность

Пользователь

  • Регистрация и авторизация с проверкой данных.
  • Личный кабинет с данными профиля.
  • Просмотр каталога товаров и услуг.
  • Карточка товара с описанием и ценой.

Корзина и заказы

  • Добавление товаров в корзину без перезагрузки страницы.
  • Анимированный счётчик количества товаров (Alpine.js).
  • Изменение количества, удаление позиций, пересчёт суммы.
  • Оформление заказа и запись в таблицу orders.

Консультации и админ-панель

  • Форма записи на консультацию (таблица appointments).
  • Админ-панель с просмотром заказов и заявок.
  • Изменение статусов заказов (новый / в работе / завершён).
  • Управление товарами: активация/деактивация позиций.

Технологический стек

Backend и база данных

  • PHP — обработка форм, работа с сессиями, авторизация, логика корзины и заказов.
  • MySQL — таблицы users, products, orders, appointments и др.
  • Связи между таблицами по ключам пользователя и заказов.
  • Проверка входа и ограничение доступа к админ-панели.

Frontend и интерфейс

  • Tailwind CSS — адаптивная верстка, быстрый прототипинг без ручного CSS.
  • JavaScript — работа с DOM, обновление корзины, интерактивность форм.
  • Alpine.js — анимированный счётчик товаров, простая реактивность.
  • Node.js — окружение для сборки и работы с Tailwind (dev-скрипты).

Архитектура и структура проекта

Структура файлов

  • /public — основные страницы (главная, каталог, корзина, ЛК).
  • /admin — административная часть, работа с товарами и заказами.
  • /includes — общие компоненты (header, footer, подключение к БД).
  • /assets — скрипты, стили, изображения.

Модель данных

  • users — данные пользователей и их учётные записи.
  • products — товары и услуги (название, описание, цена, статус).
  • orders — заказы, связанные с пользователями.
  • appointments — записи на консультации.

Особенности реализации

  • Разделение клиентской и административной логики.
  • Переиспользуемые include-файлы для шапки, подвала и БД.
  • Обновление корзины без перезагрузки страницы.
  • Подготовка к расширению (новые роли, типы услуг, фильтры).

Моя роль в проекте

В MedOil я выполнял роль full-stack разработчика: от проектирования структуры БД и продумывания функционала до верстки и написания клиентской логики.

Ключевые задачи, которые я решал:

  • Спроектировал структуру базы данных и связи между таблицами.
  • Реализовал регистрацию, авторизацию и базовый личный кабинет.
  • Сделал корзину с динамическим обновлением и записью заказов в БД.
  • Разработал прототип админ-панели для работы с заказами и товарами.
  • Сверстал основные страницы с помощью Tailwind CSS.

Исходный код

GitHub-репозиторий проекта

github.com/MorFusti/MedOil
Открыть код →