Skip to content

ellvenro/web_shop_lab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Лабораторные работы 4-6 по дисциплине "Проектирование информационных систем с применением web-технологий" (8 семестр)

Разработка сайта с клиентской и административной частями

Разработан сайт для интернет-магазина компьютерной техники. Сайт имеет следующую структуру:

  1. Главная страница "Каталог товаров"
    1.1 Страница "Статистика"
    1.2 Страница "Информация"
    1.3 Страница "Карточка товара"
    1.4 Страница "Личный кабинет"
    1.5 Страница "Корзина товаров"
    1.6 Страница администратора "Администратор"
    • Страница "Заказы клиентов"
    • Страница "Добавление типов и производителей"
    • Страница "Изменение списка товаров"

Видео с работой сайта.

Функциональность сайта и основные моменты при реализации

Данные для сайта расположены в базе данных.

Подключение базы данных реализуется в отдельном файле "database.php".

$par1_ip = "127.0.0.1";
$par2_name = "root";
$par3_p = "";
$par4_db = "shop";
//Подключение к БД
$induction = mysqli_connect($par1_ip, $par2_name, $par3_p, $par4_db);

На страницах "Каталог товаров", "Статистика" и "Информация" реализовано модальное окно для регистрации и авторизации. Реализация осуществлена с помощью функции, прописанной в отдельном файле "source.php". В окне реализована капча, также присутствует защита от SQL-инъекций, проверка на пустые поля.

Реализована работа с сессией для хранения идентификатора зарегистрированного пользователя и факта входа в личный кабинет для подсчета статистики. Подключение осуществляется в файле "session.php".

//Начало сессии
session_start();
...
//Работа с сессией
$_SESSION["Вход"] = "Да";
...
//Закрытие сессии при выходе из ЛК
session_destroy();
  • Страница "Каталог товаров"

Файл "index.php". Вход осуществляется по ссылке из меню. Каталог товаров выводится из таблицы "Товары". На странице реализован фильтр по производителям и типам товаров, а также добавление в корзину нескольких товаров.

  • Страница "Статистика"

Файл "statistics.php". Вход осуществляется по ссылке из меню. Содержит информацию о посещениях сайта, а также о проценте зарегистрированных пользователей. Соответствующая информация хранится в таблице "Статистика".

  • Страница "Информация"

Файл "contacts.php". Вход осуществляется по ссылке из меню. На странице содержится описание компании, контактные данные и форма с применением почтового сервера.

  • Страница "Карточка товара"

Файл "product.php". Вход осуществляется по ссылке на товар в любом месте сайта. Содержит полную информацию о выбранном товаре. Информация берется из таблицы "Товары". На странице имеется возможность добавления товара в корзину.

  • Страница "Личный кабинет"

Файл "cabinet.php". Вход осуществляется по ссылке "Личный кабинет" после авторизации в модальной форме. Содержит информацию о клиенте, взятую из таблицы "Клиент". Имеется возможность изменять личные данные, просматривать и удалять историю покупок.

  • Страница "Корзина товаров"

Файл "basket.php". Вход осуществляется по ссылке "Корзина". Содержит данные из временной таблицы "КорзинаБуф" со списком товаров, добавленных в корзину. Имеется возможность отчистки корзины и оформления заказа. Оформление заказа возможно только после входа в личный кабинет.

  • Страница "Администратор"

Файл "admin.php". Вход осуществляется после авторизации в модальной форме под логином и паролем администратора. В фале реализовано сразу три страницы, переход осуществляется с помощью ссылок с GET-запросами. Страница "Заказы клиентов" содержит перечень заказов из таблицы "Корзина" с сортировкой по дате или по фамилии клиента. Страница "Добавление типов и производителей" содержит формы для добавлений в таблицы "Типы" и "Производители" соответственно. Страница "Изменение списка товаров" позволяет осуществлять добавление, изменение или удаление данных из таблицы "Товары".

<!--Навигация сайта администратора-->
<nav>
  <ul>
    <li><a id=btn_zakaz href="admin.php?Админ=Заказы">Заказы клиентов</a></li>
    <li><a id=btn_type href="admin.php?Админ=Добавление">Добавление типов и производителей</a></li>
    <li><a id=btn_product href="admin.php?Админ=Товары">Изменение списка товаров</a></li>
  </ul>
</nav>
//Проверка GET-запроса
if ($_GET[Админ] == "Заказы")
  echo "<form class=main method='post' style=overflow:hidden>";
else
  echo "<form class=main method='post' style='overflow:hidden;display:none;'>"

About

26.04.2023 Проектирование информационных систем с применением web-технологий: Лабораторная работа №4-6

Topics

Resources

Stars

Watchers

Forks

Contributors