Файл: Разработка серверных приложений для WEB - Разработка сайта спортшколы SportLife.pdf

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

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

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

Добавлен: 28.03.2023

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

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

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

Введение

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

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

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

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

Техническое задание

В качестве предметной области для создания web-приложения выступает Спорт школа «SportLife», спорт школа бокса, для которой необходимо разработать информационную систему по отображению информации о проводимых тренировках и обучение детей и взрослых единоборствам, а также показывающую общее представление о единоборстве «бокс».

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

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

  • заполнение информации о тренерах;
  • слежение за актуальностью информации, хранимой в справочниках системы;
  • заполнение информации о учениках.

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


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

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

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

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

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

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

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

HTML5

HTML5 (англ. HyperText Markup Language, version 5) — язык для структурирования и представления содержимого всемирной паутины. Это пятая версия HTML. [2] Хотя стандарт был завершён (рекомендованная версия к использованию) только в 2014 году (предыдущая, четвёртая, версия опубликована в 1999 году), ещё с 2013 года браузерами оперативно осуществлялась поддержка, а разработчиками — использование рабочего стандарта (англ. HTML Living Standard). Цель разработки HTML5 — улучшение уровня поддержки мультимедиа-технологий с одновременным сохранением обратной совместимости, удобочитаемости кода для человека и простоты анализа для парсеров.

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

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

Цели HTML5

Кратко цели html5 можно назвать так:

  • Построить собственную поддержку для таких вещей, как аудио, видео и т.д.
  • Ликвидация плагинов, таких как Flash, для общих функций, которые необходимы каждому.
  • Обеспечение согласованности между браузерами и устройствами.
  • Снижение потребности в JavaScript и дополнительном коде, благодаря использованию новых html5 элементов.
  • Сделать все это настолько прозрачным, насколько это возможно.

CSS

СSS (англ. Cascading Style Sheets - каскадные таблицы стилей) формальный язык описания внешнего вида документа, написанного с использованием языка разметки. Преимущественно используется как средство описания, оформления внешнего вида web-страниц, написанных с помощью языков разметки HTML и XHTML, но может также применяться к любым XML - документам, например, к SVG или XUL.

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

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

JavaScript

JavaScript - прототипно - ориентированный сценарный язык программирования. Является диалектом языка ECMAScript. JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений.

Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности web - страницам. Основные архитектурные черты: динамическая типизация, слабая типизация, автоматическое управление памятью, прототипное программирование, функции как объекты первого класса. На JavaScript оказали влияние многие языки, при разработке была цель сделать язык похожим на Java, но при этом лёгким для использования непрограммистами. Языком JavaScript не владеет какая-либо компания или организация, что отличает его от ряда языков программирования, используемых в web-разработке.

Bootstrap

Bootstrap — фреймворк, набор HTML+CSS инструментов и шаблонов для верстки и более эффективного и быстрого создания сайтов и веб-приложений более эффективно и быстро.


Бутстрап — современный помощник, разработчиков интерфейсов, дизайнеров и вебмастеров, доступный для использования по открытой лицензии. Обратите внимание что этот фреймворк очень динамичный и регулярно обновляемый, поэтому не все его функции могут корректно поддерживаться старыми браузерами.

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

MySQL

База данных сайта MySQL – это система, предназначенная для хранения и обработки информации. Комплекс таблиц, взаимосвязанных между собой, для доступа к которым применяется система управления базами данных (СУБД) MySQL. По сути, MySQL – это специальная программа с открытым кодом, которая используется на сервере SQL. Данная программа не способна обрабатывать большое количество информации, однако она идеальна для небольших и крупных веб-ресурсов. Одними из главных плюсов MySQL, благодаря которым программа нравится многим веб-мастерам, является высокая скорость обработки информации и функциональность СУБД. Как мы уже упоминали выше, данная система представляет собой программное обеспечение с открытым кодом, и она доступна любому пользователю абсолютно бесплатно, что тоже склоняет чашу весов в сторону MySQL. Большинство современных хостингов используют именно MySQL.

PHP

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

PHP отличается от JavaScript тем, что PHP-скрипты выполняются на сервере и генерируют HTML, который посылается клиенту.

В настоящее время PHP широко применяется не только для непосредственного создания динамических сайтов, но и для написания инструментов и средств web-разработки. На данном языке создано большое количество всевозможных фреймворков и готовых систем управления контентом (всевозможных CMS и CMR).

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

Реализация сайта требует разработки общей структуры сайта, определяющей, что, где и на каких страницах будет расположено.

Рисунок 2.1 – Структурная схема сайта

Каждый ресурс Интернета имеет некоторое количество направленных на определенную тематику рубрик, объединённых между собой гиперсвязями. Как правило, ссылки на все сегменты вебсайта с короткими анонсами их содержимого приводится на первой, так называемой стартовой странице, которой присваивается имя index.htm (.html) или как в нашем случае index.php, так как основой создания сайта служит язык php. Если тематические рубрики содержат собственные подразделы, каждая из них также имеет свою стартовую страницу, называющуюся index.html.


Логическая структура сайта – это аналогичный комплект направленных на определенную тематику рубрик с распределенными по подходящим разделам документами и заранее спро­ектированными гиперсвязями между всеми страницами ресурса.

Структурная схема сайта показана на рисунке (Рисунок 2.1).

Каждая страница ресурса представлена отдельным php модулем.

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

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

Так модуль showMenu.php – используется для показа меню системы, модуль header.php – для вывода заголовка сайта, footer.php – для отображения подвала.

Для отслеживания авторизации пользователей и их прав в системе используется механизм сессий. Сессии в PHP представляют из себя механизм сохранения на стороне сервера информации о компьютере клиента.

Сессии – это группы переменных, которые хранятся на сервере, но относятся к одному уникальному посетителю. Повторю, это ключевой момент: сессии хранятся на сервере.

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

На сервере данные сессии хранятся в текстовом файле, и они доступны в программе PHP в массиве $_SESSION. Чтобы сохранить переменную в сессии нужно присвоить ей значение в этом массиве.

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

В данном модуле содержится следующий код:

session_start();

$id_us = 0;

$usRole = 0;

$usName = "";

if(isset($_SESSION["id_us"]))

$id_us = (int)$_SESSION["id_us"];

if(isset($_SESSION["usRole"]))

$usRole = (int)$_SESSION["usRole"];

if(isset($_SESSION["usName"]))

$usName = $_SESSION["usName"];

Здесь переменные $id_us, $usRole, $usName используются для получения информации о коде пользователя, его имени и правах входа. Если переменная $id_us после проверки равна 0 – значит пользователя в системе не зарегистрировано.

Если $id_us > 0 и $гsRole>0 значит в систему вошел администратор, если при не нулевом $id_us значение $usRole равно 0 – в настоящее время работу с сайтом осуществляет рядовой пользователь.