Файл: Разработка сайта издательского дома «Book 24».pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 20.05.2023

Просмотров: 188

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

PHP весьма прост для изучения, но, вместе с тем, способен удовлетворить запросы даже профессиональных программистов. Пусть Вас не пугает длинный список возможностей PHP. Вы можете быстро начать его изучать, и уже в течение первых часов сможете создавать простые PHP-программы.

Хотя PHP, главным образом, предназначается для работы в среде интернет-серверов, область его применения не ограничивается только этим.

MYSQL

MySQL — это популярный сервер баз данных, который используется в различных приложениях. Аббревиатура SQL означает «язык структурированных запросов» - (S)tructured (Q)uery (L)anguage, который MySQL использует для взаимодействия с другими программами. Более того, MySQL имеет свои собственные встроенные функции для того, чтобы обеспечить разработчикам дополнительный функционал.

MySQL включает в себя базы данных, таблицы, записи, и поля. Таблицы объединяются в базы данных, записи – в таблицы, сами же записи состоят из полей, которые содержат актуальную информацию. Подобная структура позволяет разработчикам выбирать, каким образом они хотят обращаться к информации в базе данных.

Особую помощь проекту оказала CSS–библиотека BOOTSTRAP, которая отвечает за адаптивный дизайн сайта.

Bootstrap (или же Twitter Bootstrap) – библиотека, вмещающая в себе набор стилей, классов и скриптов для создания сайтов. В библиотеке можно найти массу шаблонов, использование которых не составит особого труда.

Bootstrap (также известен как Twitter Bootstrap) — свободный набор инструментов для создания сайтов и веб-приложений. Включает в себя HTML- и CSS-шаблоны оформления для типографики, веб-форм, кнопок, меток, блоков навигации и прочих компонентов веб-интерфейса, включая JavaScript-расширения.

«Адаптивная вёрстка сайта позволяет веб-страницам автоматически подстраиваться под экраны планшетов и смартфонов. Мобильный интернет-трафик растёт с каждым годом, и чтобы эффективно обрабатывать этот трафик, нужно предлагать пользователям адаптивные сайты с удобным интерфейсом».

2. Описание модулей серверной части программы и их взаимодействие.

2.1 Описание пользовательской части.


2.1.1 Структура пользовательской части онлайн-магазина.

Онлайн-магазин компании «Book 24» содержит следующие разделы:

  • Главная;
  • Книги;
  • Регистрация;
  • Авторизация;
  • Корзина.

Организационная структура онлайн-магазина представлена на диаграмму 1.

Диаграмма 1 – Организационная диаграмма онлайн-магазина.

2.1.2 Основные программные модули.

Основные программные модули пользовательской части сайта и их описание представлены в Таблице 1.

Таблица 1 Описание программных модулей.

Имя файла

Описание

index.php

Основной вызываемый программный файл. В этом программном модуле производится загрузка всех необходимых функций и библиотек, скриптов и файлов стилей. Также из этого программного модуля вызываются все остальные модули посредством гиперссылок.

db_fns.php

Меню

cart_fns.php

Модуль корзины

Log.php

Модуль авторизации

Shop.php

Контент меню

Далее будет представлена иерархическая структура пользовательской части онлайн-магазина с подключением модулей. (см. Диаграмму 2).

Диаграмма 2 - Иерархическая структура вызова программных модулей пользовательской части онлайн-магазина.

2.2 Описание административной части.

2.2.1 Структура административной части онлайн магазина.

Административная часть онлайн-магазин компании «Book 24» содержит следующие разделы:

  • Добавить запись;
  • Редактировать запись;
  • Статистика;
  • На главную.

2.2.1 Основные программные модули.

Основные программные модули административной части сайта и их описание представлены в Таблице 2.

Таблица 2 Описание программных модулей административной части.


Имя файла

Описание

Adminstart.php

Основной вызываемый программный файл. В этом программном модуле производится загрузка всех необходимых функций и библиотек, скриптов и файлов стилей. Также из этого программного модуля вызываются все осталные модули посредством гиперссылок.

Admin1.php

Модуль добавление записи

Admin2.php

Модуль редактирование записи

Admin3.php

Модуль статистики

Admin4.php

Модуль списка заказов

Далее будет представлена иерархическая структура административной части онлайн-магазина (см. Диаграмма 3).

Диаграмма 3 - Иерархическая структура вызова программных модулей административной части онлайн магазина.

3.Описание структуры базы данных и ее функции

3.1 Описание структуры базы данных.

В базе данных проекта насчитывается 11 таблиц. Их названия и описание полей вместе с описанием индексов и связей представлены в Таблица 3.

Таблица 3 – Таблицы базы данных

Таблица

Поле

Тип

Описание

индекс

Сategoties "Категории"

id

int(11)

Индефикатор

PRIMARY

name

varchar(100)

Наименования

cat_id

varchar(100)

Наименование

Ordes "Заказы"

id

int(11)

Индефикатор

PRIMARY

product

varchar(100)

Наименования

prod_id

int(11)

Индефикатор

price

decimal(8,2)

Цена

qty

varchar(10)

Количества

name

varchar(100)

Имя

s_name

varchar(100)

Фамилия

address

varchar(100)

Адрес

email

varchar(100)

Електронная почта

date

date

Дата

time

time

Время

Product "Продукт"

id

int(11)

Индефикатор

PRIMARY

title

varchar(100)

Название

description

text

Описание

price

int(11)

Цена

image

varchar(100)

Файл изображения

cat

varchar(100)

Категория

Registration "Регистрация"

surname

varchar(100)

УЗ

name

varchar(100)

Имя

address

varchar(100)

Адрес

e-mail

varchar(100)

Электронная почта

login

varchar(100)

Логин

PRIMARY

password

varchar(100)

Пароль


В проекте используется реляционные (связанные между собой) таблицы базы данных. Например, каждый товар имеет свою одну категорию. В это же время одна категория содержит в себе много товаров. Такой тип связи называется «один-ко-многим».

Далее рассмотрим тип связи «многие-ко-многим». В нашем проекте есть и такой тип связи. Один заказ может содержать много товаров. Один товар может быть соотнесен к многим заказам. Чтобы реализовать подобный тип связи, необходимо создать третью таблицу-связку, которая будет содержать в одной записи код товара и код заказа.

На данном этапе пришло время создать ER-модель базы данных. Она будет содержать в себе все таблицы и ключевые связи между ними, которые были описаны выше.

Данная ER-диаграмма представлена на Диаграмма 4.

Диаграмма 5 – ER-диаграмма базы данных проекта.

3.2 Пользовательские функции и запросы к базе данных.

В данном разделе будут рассмотрены основные пользовательские функции, которые работают с таблицами базы данных.

Вся работа админпанели построена на принципе CRUD (от сочетания английских слов «create» , «read», «update», «delete»). Это основные функции работы с таблицами – создание, просмотр, редактирование и удаление записей.

Функция index в каждом модуле административной части отвечает за просмотр всех записей в таблице.

Тип запроса к таблице базы данных, применяемый в этой функции – SELECT.

Вот пример запроса к таблице категорий:

SELECT id, name, image, (SELECT name FROM category WHERE id = C.parent_id) AS parent_id FROM category AS C WHERE 1 ORDER BY id

Интересно отметить, что здесь применяется так называемый вложенный SELECT, т.е. в данном запросе, кроме идентификатора, наименования, имени файла изображения мы получаем еще и имя родительской категории благодаря ключевому полю и связям.

Функции updateform и update в каждом модуле административной части отвечает за редактирование всех записей в таблице.

Функция updateform c входным параметром id применяет SELECT-запрос, доставая из таблицы запись с идентификатором id. В ней создается форма ввода данных, заполненная из таблицы. Данные можно редактировать и отсылать на сервер для обработки функцией update посредством POST-запроса.

Функция update обрабатывает POST-запрос и сохраняет данные в таблице

Тип запроса к таблице базы данных, применяемый в этой функции – UPDATE.


Вот пример запроса к таблице категорий:

Функция insertform вызывает updateform без параметров, и тем самым создается пустая форма ввода для создания новой категории, которая передает управление функции insert.

UPDATE category SET name = 'Бытовая техника', parent_id = '1', image = 'uploads/cat1.jpg' WHERE id=2

Функция insert обрабатывает POST-запрос и создает новую запись в таблице

Тип запроса к таблице базы данных, применяемый в этой функции – INSERT.

Вот пример запроса к таблице категорий:

INSERT INTO category (name, parent_id, image) VALUES (‘Новая категория’, 1, ‘myimage.jpg’)

Функция delete удаляет запись из таблицы по идентификатору

Тип запроса к таблице базы данных, применяемый в этой функции – DELETE.

Вот пример запроса к таблице категорий:

DELETE FROM category WHERE id = 10

4. Описание структуры клиентской части.

В данном разделе будет рассмотрена структура клиентской части онлайн-магазина. В данном разделе будет рассмотрена структура клиентской части промо-сайта. К клиентской части относится та часть сайта, которая отображается с помощью HTML-кода в браузере пользователя.

Главная страница сайта вот такой вид (

Рисунок 2 Главная страница сайта.

Раздел регистрация Рисунок 3.

Рисунок 3 Окно регистрации.

На Рисунке 4 информация о товаре и возможность поместить его в корзину.

Рисунок 4 Информация о товаре.

Окно авторизации изображено на Рисунке 5.

Рисунок 5 Окно авторизации.

Когда пользователь сделал выбор книг, то он переходит во вкладку корзина, где он сверяется со своим выбором, а дальше он оформляет его. Это представлено на Рисунке 6.

Рисунок 6 Корзина и оформление заказа.

ЗАКЛЮЧЕНИЕ

В процессе написания курсовой работы и разработки программного обеспечения согласно техническому заданию были сделаны следующие выводы:

  • современная торговая компания для успешного выполнения своей деятельности нуждается в использовании передовых компьютерных технологий;
  • для успешного внедрения технологий необходима профессиональная разработка онлайн-магазина компании;
  • онлайн-магазин компании – это очень важный элемент ведения бизнеса;
  • грамотное создание и управление информационным промо-сайтом компании приносит большую прибыль;