Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Разработка сайта праздничного агентства «Мистер Праздник»

Содержание:

Введение

Первоначально Интернет не был местом, где можно заработать деньги. Он был место для коммуникации с людьми.

Любой бизнес для взаимодействия с широкой аудиторией требует рекламы. Их существуют достаточно много.С появлением бтехнологий появился более эффективный инструмент. Данным инструментом является сайт

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

Целью курсовой работы является создание сайта праздничного агентства «Мистер Праздник» www.pradnik.ru

Для решения нашей цели, необходимо решить следующие задачи:

1. Проанализировать эффективность сайта в развитии компании.

2. Показать основные этапы и разработать сайт для праздничного агентства.

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

4. Наполнить сайт качественной и интересной информацией , а также расширить возможности с помощью разнообразных плагинов .

1.Техническое задание и выбор средств реализации

1.1. Описание технического задания

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

На сайте вы нужно представить различные типы вечеринок, их содержание и фотоотчет.

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

Внесение изменений в актуализацию о конкурсах, хранимая в справочниках;

Выкладка фотографий на сайт;

Публикация видео;

В справочниках содержатся данные, касающиеся бронирования столиков на мероприятие, даты и описание вечеринок, представленных на сайте. Для подробного ознакомления с ними необходимо авторизоваться.

Рисунок 1 – Схема использования сайта

Кроме ведения и показа справочной информации на сайте необходимо предусмотреть информационные страницы с описанием деятельности

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

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

1.2. Средства реализации

Для разработки нашего сайта мы используем следующие компоненты сайта:

1.2.1.HTML5

HTML 5 — это язык гипертекстовой разметки, предназначенный для веб-страниц. Браузеры понимают html и могут переводить его для пользователя в понятный для нас вид. Каждый элемент сайта является кодом и браузер переводит в дружественный вид для пользователя.

Язык состоит из тегов —команды, которые преобразовываются в визуальные объекты в браузере пользователя.

HTML5 помогает расширять, улучшать и рационализировать разметку документов, а также добавлять единый API для сложных веб-приложений.

1.2.2. Open Server

Open Server—это портативный программный продукт, который заменяет полноценный веб-сервер на локальной машине, с возможностью настройки конфигурации под нужные требования. По своей сути он представляет собой пакет серверного программного обеспечения для организации собственного портативного веб сервера для разработки сайтов. 

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

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

В состав основного ПО входит:

  • Веб сервера: Apache + Nginx.
  • Базы данных: MySQL, Myriad, MongoDB, PostgreSQL.
  • Кеширование: Redis, Memcached.
  • FTP сервер: FTP FileZilla.
  • PHP Интерпретатор: PHP 5.3-7.2 (Модули: Xdebug, PDFlib, MongoDB, Redis, Phalcon, Imagick)
  • Графика: ImageMagick.
  • ДНС сервер: Bind;
  • Распределённая система управления версиями: Git.
  • Скрипты: Ghostscript.
  • Отправка почты: Sendmail.
  • Разное: Wget, Enron Lite, Adminer, ConEmu, HeidiSQL, RockMongo, PHPRedisAdmin, PHPMyAdmin, PHPPgAdmin, PHPMemcachedAdmin.

1.2.3. CSS

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

Язык позволяет прикреплять стиль (например, шрифты и цвет) к структурированным документам достаточно много современных веб-сайтов работают в связке HTML+CSS.

CSS упрощает создание веб-страниц и обслуживание сайтов, определяя стиль представления документов от содержимого документов.

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

Хотя приведенный пример пытается влиять только на пару свойств, необходимых для рендеринга HTML-документа, он сам по себе квалифицируется как таблица стилей. В сочетании с другими таблицами стилей (одна фундаментальная особенность CSS заключается в том, что таблицы стилей объединяются), правило будет определять окончательное представление документа.

1.2.4. PHP

PHP — это скриптовый, интерпретируемый язык программирования, имеющий открытый исходный код. Язык специально сконструирован для веб-разработок и его код может внедряться непосредственно в HTML.

Основные функции языка программирования PHP заключается в разработке:

  • Статичных сайтов;
  • Динамических сайтов;
  • Веб-приложений.

Главная задача PHP — это «оживление» HTML страниц. Язык носит изменения в веб-страницу на сервере перед тем, как она будет отправлена браузеру. PHP умеет исполнять код — так называемые сценарии. В ходе исполнения PHP может изменить или динамически создать любой HTML-код, который и является результатом исполнения сценария.

На данном языке написано большое количество сайтов и веб приложений.

1.2.5. MySQL

MySQL — это реляционная база данных (СУБД). Реляционная — значит внутри неё есть данные, связанные между собой, и эту связь можно представить в виде таблиц. 

Эта система считается относительно дешевой, по сравнению с другими платными СУРБД. Система хорошо масштабируется, считается довольно гибкой и простой в использовании. Плюс, изначально система разрабатывалась для управления большими базами данных. Также поддержка сервера MySQL присутствует в поставке PHP.

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

1.2.6. JavaScript

JavaScript — язык сценариев, или скриптов. Скрипт представляет собой программный код — набор инструкций, который не требует предварительной обработки (например, компиляции) перед запуском. Язык создан в начале 90-х фирмой Netscape, браузер которой Netscape Navigator в те времена был наиболее популярным средством для просмотра веб-сайтов.

Код JavaScript интерпретируется движком браузера во время загрузки веб-страницы. Интерпретатор браузера выполняет построчный анализ, обработку и выполнение исходной программы или запроса.

Стандартом языка JavaScript является ECMAScript. По состоянию на 2012, все современные браузеры полностью поддерживают ECMAScript 5.1. Старые версии браузеров поддерживают по крайней мере - ECMAScript 3. 17 июня 2015 года состоялся выпуск шестой версии ECMAScript. Эта версия официально называется ECMAScript 2015, которую чаще всего называют ECMAScript 2015 или просто ES2015. С недавнего времени стандарты ECMAScript выпускаются ежегодно. Эта документация относится к последней версии черновика, которой является ECMAScript 2018.

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

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

1.2.7. NotePad++

NotePad++— свободный текстовый редактор c подсветкой, для написания программного кода в Windows.

Базовая функциональность программы может быть расширена как за счёт плагинов, так и сторонних модулей, таких как компиляторы и препроцессоры. Поддерживает открытие более 100 форматов.

Возможности программы:

  • Подсвечивание макросов
  • Сворачивание кода
  • Автодополнение и автоматическое закрытие скобок и тэгов (если активировано)
  • Закладки в тексте
  • Регулярные выражения для поиска и замены
  • Воспроизведение и запись макросов
  • Сравнение файлов
  • Менеджер проектов
  • Карта документа
  • Переопределение любых горячих клавиш
  • Резервное копирование сохраняемых файлов (включается в настройках)
  • Трансформация текста при помощи подключённого плагина TextFX
  • Поддержка и конвертирование кодировок ANSI, UTF-8, UCI
  • Блоковое выделение текста, одновременное выделение нескольких разных мест
  • Многострочное редактирование

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

Переход сайта осуществляется по следующим ссылкам: Главная, Вечеринки, Об Агентстве, Фотографии, Видео.

На рисунке 3 вы можете увидеть блок-схему нашего сайта.

Рисунок 2. Блок-схема сайта

Сайт включает в себя несколько страниц, главная страница: index.php. На данной странице находится форма с главным меню сайта. Главная страничка сайта находится на рисунке 3. Сайт имеет ссылку http://www.prazdnik.ru.

Для отображения подразделов сайта, по мере необходимости подключаются некоторые стили.

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

Когда мы заходим на стартовую страницу сайта, то можно заметить, что с ней взаимодействуют модули Menu.php[1], отображающий меню, footer.php[2] показывает подвал сайта и заголовок header.php[3] , а также кнопка регистрации и авторизации на сайте (рисунок 3.). Подробнее об авторизации можно посмотреть в пункте 4.

Рисунок 3. Главное меню сайта

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

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

Если вы нажмете, на кнопку, то вы увидите схему расположения столиков для бронирования (рисунок 5). Любой желающий может выбрать себе место, исходя из собственных предпочтений

Рисунок 5. Схема столиков для бронирования

Переход сайта осуществляется по следующим ссылкам: Главная, Вечеринки, Об Агентстве, Фотографии, Видео (рисунок 6).

Рисунок 6. Шторка с переходами

В теле главной страницы сайта изображены: слоган, фотография с мероприятия, а также кнопка «Прочие радости» (рисунок 7)

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

Если перейти по кнопке «Прочие радости», то можно заметить сюрпризы, которые будут ожидать при посещении данного мероприятии (рисунок 8).

Рисунок 8. Прочие радости

Рисунок 9. Об агентстве

Перейдя в файл aboutus.php (рисунок 9), вы можете ознакомиться с краткой историей праздничного агентства о преимуществах посещения и фрагмент одной из вечеринок агентства.

Если перейти по ссылке файла partys.php, то там отобразятся услуги, которые представлены в нашем праздничном агентстве.

Данная страничка имеет 4 услуги: «Cвадьбы», «Детские вечеринки», «40+» и «Дни Рождения» которые, можно выбрать на данном сайте (рисунки 10,11,12,13,14).

Рисунок 10. Услуги Праздника

Рисунок 11. Виды свадьбы

Рисунок 12. Виды детских праздников

Рисунок 13. Виды праздников для 40+

Рисунок 14. Виды Дни Рождений

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

После разработки модулей страниц нашего сайта, необходимо разработать базу данных сайта.

База данных (БД) — это структурированная совокупность данных, которыми управляют централизованно.

В проекте базы данных имеется 8 таблиц. Базы данных имеют тип MyISAM. Так как объемы данных не столь велики. Данный более всего подходит для раз.

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

Кодировка, выбрана utf8_general_ci, так как не возникают проблемы с отображением информации на нашем сайте она лучше всего распознает русские символы.

Для создания баз данных, нам необходимо создать таблицы.

Таблица 1 – Атрибуты сущности Тематика

Атрибут

Ключ

Значение

Домен

Код тематики

+

Идентификатор

Число

Вид

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

Текст

Описание сущности (Таблица 3.2).

Таблица 2 – Атрибуты сущности Время

Атрибут

Ключ

Значение

Домен

Код времени

+

Идентификатор

Число

Дата/время

Наименование производителя фильма

Текст

Описание сущности Фильм (Таблица 3.3).

Таблица 3 – Атрибуты сущности Праздники

Атрибут

Ключ

Значение

Домен

Код праздника

+

Идентификатор

Число

Жанр

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

Текст

Вид

Вид праздника

Текст

Код аниматора

Идентификатор

Число

Дата/Время

Дата/Время мероприятия

Дата

Описание сущности Пользователь (Таблица 3.4).

Таблица 4 – Атрибуты сущности Пользователь

Атрибут

Ключ

Значение

Домен

Код пользователя

+

Идентификатор записи

Число

Логин

Логин пользователя

Текст

Пароль

Пароль для входа в систему

Текст

Имя

Имя пользователя

Текст

Код аниматора

Идентификатор записи

Число

Описание сущности Аниматор(Таблица 3.5).

Таблица 5 – Атрибуты сущности Аниматор

Атрибут

Ключ

Значение

Домен

Код аниматора

+

Идентификатор

Число

Жанр

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

Текст

Вид

Вид праздника

Текст

Код аниматора

Идентификатор

Число

Дата/Время

Дата/Время мероприятия

Дата

Описание сущности Посещение (Таблица 3.6).

Таблица 6 – Атрибуты сущности Посещение

Атрибут

Ключ

Значение

Домен

Код пользователя

+

Пользователь, посетил сайт

Число

Код типа

Код типа зала

Число

Стоимость

Стоимость билета

Число

Описание сущности Типы мест (Таблица 3.7).

Таблица 7 – Атрибуты сущности Типы мест

Атрибут

Ключ

Значение

Домен

Код типа

+

Идентификатор записи

Число

Зал

Название зала

Текст

Кол-во мест

Количество мест в зале

Число

Цена/в час

Стоимость билета для данного типа

Число

Таблица 8– Атрибуты сущности Сценарий

Атрибут

Ключ

Значение

Домен

Код сценарий

+

Идентификатор

Число

Вид

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

Текст

Для того, чтоб наша база работала, необходимо осуществить соединения между таблицами. На рисунке можно просмотреть взаимодействие таблиц баз данных

Рисунок 17 Инфологическая модель баз данных

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

4.1. Обычный пользователь

Работа сайта начинается с главной страницы (смотреть рисунок 3).

Для получения доступа пользователя к сайту, необходимо воспользоваться кнопкой «Вход».

Рисунок 19. Вход на сайт

https://sun9-2.userapi.com/impg/QQsJPN8X2wGdV8pGhdkrDaU9AZjoZjZwDJy6sg/Ufwt62nkYBM.jpg?size=1149x356&quality=96&proxy=1&sign=96aff4a8a4bac1bf843c183c8faff57f&type=album

Рисунок 20. Авторизация пройдена

После того, как прошла авторизация, поступает, сообщение о том, что вы успешно зарегистрировались, а также появляется кнопка о выход из сайта (рисунок 20).

4.2 Описание интерфейса «Администратор».

Администратор данного сайта занимается тем, что выкладывает фото и видео с праздников.

На рисунках 21 и 22 отображаются фотографии, а также видео с Хостинга YouTube.

Рисунок 21. Фотографии с праздников

Рисунок 22. Видео с мероприятий

4.3. Инструкция об использовании

Для перемещения и управления функционалом необходимо использовать систему меню информационной системы (Рисунок 23).

Рисунок 23. Меню Сайта

Для входа на сайт служит кнопка вход, для регистрации – Регистрация. По данной кнопке происходит переход на форму регистрации в системе (Рисунок 24).

Рисунок 24. Регистрация пользователя

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

Заключение

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

  • Рассмотрена эффективность сайта в развитии агентства;
  • Выявлены требования для создания сайта
  • Сформированы модули, отображающие работу сайта;
  • Реализован и спроектирован сайт для работы и управления базой данных, с использованием Web-приложений

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

Также была создана база данных при помощи приложения MySQL. Реализация данного проекта велась на таких языках как HTML, CSS, PHP, Java-Script, для проверки работоспособности написания программного кода использован Open Server, а также львиная доля заслуги реализации создания сайта заключается в написании программного кода, с помощью текстового Notepad++.

Был разработан сайт для праздничного агентства. В ходе проектирования были применены современные средства, использован современный дизайн, а также работа его была протестирована через Open Server.

Созданный сайт может помочь расширить базу потенциальных клиентов и партнеров, увеличить объем продаж, повысить узнаваемость и способен дать конкуренцию другим агентствам. Благодаря созданным модулям "Видео", "Фото", "Авторизация" сайт способен улучшить связь между агентством и гостями сайта.

Литература

1)Богданов, М.Р. Перспективные языки веб-разработки / М.Р. Богданов. - 2-е изд., испр. - М.: Национальный Открытый Университет «ИНТУИТ», 2016

2) https://www.bibliofond.ru/view.aspx?id=870926;

3) Вадим Дунаев. HTML, скрипты и стили. BHV, Санкт-Петербург, 2015. ISBN 978-5-9775-3317-1.

4) Гущин А.Н. Базы данных: учебник. - М.: Директ-Медиа, 2014. - 266с.

5)Мейер, Б. Инструменты, алгоритмы и структуры данных / Б. Мейер. - 2-е изд., испр. - М. : Национальный Открытый Университет «ИНТУИТ», 2016;

6)Мазуркевич, А. PHP: настольная книга программиста / А. Мазуркевич. - М.: Новое знание, 2003. - 480 с;

7) Никсон, Р. Создаем динамические web-сайты с помощью PHP, MySQL и JavaScript / Р. Никсон. - П.: Питер, 2011. - 496 с.

8) Парк, Д. PHP и MySQL. Библия программиста / Д. Парк, С. Суэринг. - Диалектика, 2010. - 912 с.

9)Прохоренок, Н. HTML, JavaScript, PHP и MySQL. Джентльменский набор Web-мастера / Н. Прохоренок. - СПб.: БХВ - Петербург., 2010. - 900 с;

10)Савельева, Н.В. Язык программирования PHP / Н.В. Савельева. - 2-е изд., испр. - М. : Национальный Открытый Университет «ИНТУИТ», 2016;

11)https://softportal.pro/ospanel.html;

12) Томсон, Л. Разработка Web-приложений на РНР и MySQL/ Л. Томсон. - М.: ДиаСофтЮП, 2003. - 672 с.

13) https://wpmaster.kz/ustanovka-open-server/;

14) https://webformyself.com/chto-takoe-html5/;

15)https://htmlacademy.ru/tutorial/php/basics;

16) Харрис, Э. PHP/MySQL для начинающих / Э. Харрис. - М.: Кудиц - образ,

Приложение

Menu.php

<header class="bg-secondary">

<nav class="navbar navbar-expand-md navbar-dark bg-dark sticky-top">

<!-- Brand -->

<!-- <a class="navbar-brand" href="index.php">-->

<!-- <img src="img/K-chemu-snitsya-salyut.jpg" alt="logo" class="img-fluid" width="50">-->

<!-- </a>-->

<!-- Toggler/collapsibe Button -->

<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#collapsibleNavbar">

<span class="navbar-toggler-icon"></span>

</button>

<!-- Navbar links -->

<div class="collapse navbar-collapse" id="collapsibleNavbar">

<ul class="navbar-nav main-menu">

<li class="nav-item">

<a class="nav-link" href="index.php">Главная</a>

</li>

<li class="nav-item">

<a class="nav-link" href="partys.php">Вечеринки</a>

</li>

<li class="nav-item">

<a class="nav-link" href="aboutus.php">Об&nbsp;Агенстве</a>

</li>

<li class="nav-item">

<a class="nav-link" href="phtos.php">&nbsp;Фото с Праздников</a>

</li>

<li class="nav-item">

<a class="nav-link" href="videos.php">&nbsp;Видео</a>

</li>

<?php

if($id_us>0 && $usRole==0) {

?>

<li class="nav-item">

<a class="nav-link" href="history. php">История</a>

</li>

<?php

}

?>

<?php

if($usRole > 0) {

?>

<!-- Dropdown -->

<li class="nav-item dropdown">

<a class="nav-link dropdown-toggle" href="#" id="navbardrop" data-toggle="dropdown">

Меню

</a>

<div class="dropdown-menu">

<a class="dropdown-item" href="genree.php">Тип вечеринок</a>

<a class="dropdown-item" href="producer.php">Аниматоры</a>

<div class="dropdown-divider"></div>

<a class="dropdown-item" href="placeType.php"> Места</a>

<div class="dropdown-divider"></div>

<a class="dropdown-item" href="films.php">Конкурсы</a>

<a class="dropdown-item" href="time.php">Время</a>

</div>

</li>

<?php

}

?>

</ul>

<ul class="navbar-nav ml-auto admin-menu">

<?php

if($id_us == 0) {

?>

<?php

}

else {

?>

<?php

}

?>

</div>

</ul>

</nav>

</header>

Footer. Php

<footer class="bg-dark">

<ul class="navbar-nav ml-auto admin-menu">

<?php

if ($id_us == 0) {

?>

<li class="nav-item">

<form class="form-inline" action="register.php" method="get">

<button class="btn btn-outline-warning">Регистрация</button>

</form>

</li>

<li class="nav-item ml-1">

<form class="form-inline" action="enter.php" method="get">

<button class="btn btn-success">Вход</button>

</form>

</li>

<?php

}

else {

?>

<li class="nav-item">

<form class="form-inline" action="exit.php">

<button class="btn btn-danger" type="submit">Выход</button>

</form>

</li>

<?php

}

?>

<div class="row">

<div class="col-md-6">

</div>

<div class="col-md-6">

<p><strong>Контактная информация</strong></p>

<p>

<span><em>Почта:</em> mister_prazdnik@mail.ru</span><br>

</p>

</div>

</div>

</footer>

header.php

<?php

include_once ("chkSession.php");

include_once ("header.php");

include_once ("Menu.php");

?>

<body background= "img/kelvin_17_676_oboi_vozdushnie_shary_1920x1080.jpg">

<div style="background: #FFFF00;">

<h4>Веселые вечеринки только у нас.</h4>

<img src="img/463bf04ab850b5fcd32586fce436f5d1.jpg" >

<hr class="my-4">

<p class="lead">

<a class="btn btn-primary btn-lg" href="surprise.php" role="button">Прочие радости</a>

</p>

</div>

</body>

<?php

include_once ("footer.php");

?>

  1. Модуль showMenu.php модель приложен в приложении

  2. Модуль footer.php модель приложен в приложении

  3. Модуль header.php модель приложен в приложении