4.18M

vanek

1.

Проектирование и разработка интернетмагазина спортивных товаров
Выполнил студент группы Д3ИС1
специальности 09.02.07
«Информационные
системы и программирование»
Штефуряк Иван Сергеевич
Руководитель Ханмурзина Е.В.
2026 г.

2.

Проблема и актуальность
Текущая ситуация
Потребность
Малые магазины
спортивных товаров
полагаются на устные
договорённости и
мессенджеры — это ведёт к
ошибкам в учёте и потере
клиентов.
Необходим веб-ресурс с
онлайн-просмотром
товаров, корзиной,
личным кабинетом и
информированием об
акциях.
Цель проекта
Создать веб-приложение, упрощающее
выбор и заказ товаров, обеспечивающее
информирование покупателей об
ассортименте и акциях.

3.

Архитектура «клиент-сервер»
База данных
MySQL:
users,categories,pro
ducts,cart,reviews
Сервер
PHP-сценарии,
сессии, логика
Клиент
Браузер: HTML, CSS, JS
Архитектура построена по принципу «клиент-сервер»: браузер пользователя взаимодействует с PHP-сценариями на
сервере, которые обрабатывают логику магазина и обращаются к базе данных MySQL. PHP-сессии «запоминают»
пользователя при перемещении между страницами, сохраняя персональные данные, историю заказов и содержимое
корзины. Серверная часть разбита на функциональные модули: регистрация, аутентификация, обработка заказов — что
упрощает сопровождение и модернизацию кода.

4.

Структура базы данных sport_shop
База данных (БД) — это организованная
совокупность связанных между собой данных,
хранящихся в электронном виде. Она построена по
чётким правилам и имеет продуманную структуру,
что позволяет легко получать к ней доступ,
управлять ею и обновлять содержимое
users
products
cart
reviews
id, username, email,
password
(хешированный),
full_name, phone, role,
created_at
id, name, description,
price, category_id,
brand_id, sizes, image,
stock
user_id, product_id,
quantity, size —
каскадное удаление
при удалении
пользователя
user_id, product_id,
rating (1–5), comment,
created_at

5.

Пользовательский интерфейс
Главная страница
Герой-секция с призывом «Начать покупки»,
навигация и карточки категорий с иконками.
Корзина
Таблица товаров с изменением количества,
пересчётом суммы и кнопкой «Оформить заказ».
Каталог товаров
Авторизация
Фильтрация по категории, бренду, размеру и цене.
Карточки с фото, ценой и кнопкой «В корзину».
Формы входа и регистрации с валидацией,
хешированием паролей и сообщениями об ошибках.

6.

Ключевые функции: реализация на PHP
01
Регистрация
Валидация email и пароля,
проверка уникальности,
хеширование через
password_hash() (bcrypt).
02
03
Авторизация
Проверка через password_verify(),
создание сессии с id, username и
ролью пользователя.
Фильтрация каталога
Параметры передаются через GET,
формируется динамический SQLзапрос с подготовленными
выражениями.
04
05
Корзина
Добавление, обновление количества, удаление
товаров — данные сохраняются в таблицу cart.
Выход
session_destroy() уничтожает сессию и куки —
доступ к личным данным блокируется.

7.

Обеспечение безопасности
SQL-инъекции
Подготовленные запросы PDO во всех скриптах работы с БД
XSS-атаки
Экранирование вывода через htmlspecialchars() для всех
пользовательских данных
Пароли
Хеширование bcrypt — необратимое хранение, проверка через
password_verify()
Сессии
Cookies с флагами HttpOnly и Secure, недоступны для JavaScript

8.

Заключение
Достигнутые результаты
Разработано полнофункциональное веб-приложение
интернет-магазина спортивных товаров с системой
авторизации, фильтрацией товаров, корзиной и
отзывами. Приложение готово к демонстрации
заказчику.
Регистрация и авторизация с хешированием
паролей
Фильтрация по категориям, брендам, размерам и
цене
Корзина с сохранением данных в БД
Личный кабинет с историей заказов
Система отзывов с оценкой 1–5 звёзд
Перспективы развития
Приложение может быть доработано с добавлением:
Роли администратора для управления товарами
Системы онлайн-оплаты
Интеграции с платёжными шлюзами
Веб-приложение автоматизирует приём заказов и
освобождает сотрудников от ручной работы.
English     Русский Правила