Файл: Разработка сайта компании (ООО Управление и Инвестиции).pdf

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

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

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

Добавлен: 31.03.2023

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

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

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

В приложении 2 показано, что после инициализации сессии идет проверка на существование глобальной переменной $_SESSION, с помощью функции isset().

isset() — определяет, была ли установлена переменная значением отличным от NULL. А если переменная вовсе не существует, тогда null не вернет, но выдаст ошибку.

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

Рисунок 15. Закрытый доступ

Также в приложении 3 показано каким образом на сайте создаются глобальный массив переменных $_SESSION.

После завершения работы с сессией сначала нужно раз регистрировать все переменные сессии, а затем вызвать функцию unset(). Раз регистрация сеансовой переменной и уничтожение сессии происходит благодаря использованию функции session_destroy(). Этот процесс показан в приложении 3. На страницах закрытого доступа, присутствует кнопка «Выход», она передает значение методом GET на страницу основного сайта, где раз регистрирует созданные ранее глобальные переменные $_SESSION с помощью функции unset().

Процесс создания программного продукта в текстовом редакторе Atom продемонстрирован на рисунке 16.

Рисунок 16. Процесс создания программного продукта

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

Если табличный процессор Excel специально создан для решения задач обработки табличных данных, то существуют системы (приложения) для решения иных классов задач. В частности, очень большую роль играют сейчас программы (приложения, системы), цепь которых – хранение данных и выдача данных по запросу пользователя. Использование компьютеров именно для решения этого класса задач становится всё более массовым явлением.

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


Для разработки программ, систем программ, работающих с базами данных, используются специальные средства – системы управления базами данных (СУБД). [8]

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

В настоящее время наиболее известными СУБД являются: Oracle Database, MS SQL Server, MySQL (MariaDB) и ACCESS. Последняя входит в состав профессионального офисного пакета Microsoft Office. Это современные системы с большими возможностями, предназначенные для разработки сложных программных комплексов.

Для разработки программного продукта используется локальный сервер Open Server, который представляет из себя пакет программ, для создания веб-сайта. Входящим в основной комплекс пакета является СУБД MySQL.

База данных (БД) – это совокупность массивов и файлов данных, организованная по определённым правилам, предусматривающим стандартные принципы описания, хранения и обработки данных независимо от их вида. Также можно дать следующее определение — совокупность организованной информации, относящейся к определённой предметной области, предназначенная для длительного хранения во внешней памяти компьютера и постоянного применения.

Виды баз данных:

  • фактографическая – содержит краткую информацию об объектах некоторой системы в строго фиксированном формате;
  • документальная – содержит документы самого разного типа: текстовые, графические, звуковые, мультимедийные;
  • распределённая – база данных, разные части которой хранятся на различных компьютерах, объединённых в сеть;
  • централизованная – база данных, хранящихся на одном компьютере;
  • реляционная – база данных с табличной организацией данных;
  • неструктурированная (NoSQL) – база данных, в которой делается попытка решить проблемы масштабируемости и доступности за счёт атомарности и согласованности данных, но не имеющих четкой (реляционной) структуры.

Одно из основных свойств базы данных – независимость данных от программы, использующих эти данные. Работа с базой данных требует решения различных задач, основные из них следующие:

  • создание базы;
  • запись данных в базу;
  • корректировка данных;
  • выборка данных из базы по запросам пользователя.

Задачи этого списка называются стандартными.

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


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

В БД содержатся банные некоторого множества объектов. Каждая запись содержит данные одного объекта. Каждая такая база данных определяется именем файла, списком полей, шириной полей.

Компьютеры, которые устанавливают и запускают программное обеспечение СУБД, называются клиентами. Когда им нужно получить доступ к данным, они подключаются к серверу СУБД. Это система «клиент-сервер».

В создании программного продукта понадобился база данных с реляционного вида.

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

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

Одно или несколько устройств (клиентов) подключаются к серверу через определённую сеть. Каждый клиент может сделать запрос из графического интерфейса пользователя (GUI) на своих экранах, и сервер выдаст желаемый результат, если оба конца понимают инструкцию. Не вдаваясь в технические аспекты, основные процессы, происходящие в среде MySQL, одинаковы:

  • MySQL создаёт базу данных для хранения и управления данными, определяющими отношения каждой таблицы;
  • клиенты могут делать запросы, вводя определённые команды SQL на MySQL;
  • приложение сервера ответит запрошенной информацией и появится на стороне клиента.

Из преимуществ СУБД MySQL стоит отметить простоту использования, гибкость, низкую стоимость владения (относительно платных СУБД), а также масштабируемость и производительность.

MySQL позволяет хранить целочисленные значения со знаком и беззнаковые, длиной в 1, 2, 3, 4 и 8 байтов, работает со строковыми и текстовыми данными фиксированной и переменной длины, позволяет осуществлять SQL-команды SELECT, DELETE, INSERT, REPLACE и UPDATE, обеспечивает полную поддержку операторов и функций в SELECT- и WHERE- частях запросов, работает с GROUP BY и ORDER BY, поддерживает групповые функции COUNT(), AVG(), STD(), SUM(), MAX() и MIN(), позволяет использовать JOIN в запросах, в т.ч. LEFT OUTER JOIN и RIGHT OUTER JOIN, поддерживает репликацию, транзакции, работу с внешними ключами и каскадные изменения на их основе, а также обеспечивает многие другие функциональные возможности.


Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Есть и другие типы таблиц, разработанные сообществом.

PhpMyAdmin — веб-приложение с открытым кодом, написанное на языке PHP и представляющее собой веб-интерфейс для администрирования СУБД MySQL. PhpMyAdmin позволяет через браузер и не только осуществлять администрирование сервера MySQL, запускать команды SQL и просматривать содержимое таблиц и баз данных. Приложение пользуется большой популярностью у веб-разработчиков, так как позволяет управлять СУБД MySQL без непосредственного ввода SQL команд.

Интерфейс phpMyAdmin показан на рисунке 17.

Рисунок 17. Интерфейс phpMyAdmin.

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

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

Возможности phpMyAdmin:

  • интуитивно понятный веб-интерфейс;
  • поддержка импорта данных из CSV и SQL;
  • поддержка экспорта в различные форматы CSV, SQL, XML, PDF, ISO/IEC 26300 - OpenDocument текст и таблицы, Word, Excel, LATEX и другие;
  • администрирование нескольких серверов;
  • генерирование наглядных схем баз данных в виде PDF;
  • создание комплексных запросов с помощью функции Запрос по шаблону;
  • глобальный или частичный поиск в базе данных;
  • трансформация данных в любой формат, используя набор предназначенных функций вроде отображения BLOB-данных в виде картинки или ссылки для скачивания и так далее.

Простота пользования и удобство интерфейса PhpMyAdmin предопределили его популярность и широту распространения во Всемирной сети. Эту программу включают в пакет серверного софта большинство хостеров, предоставляющих виртуальные площадки для размещения сайтов. Кроме того, она является частью пакета программ локальных серверов, используемых веб-разработчиками для отладки сайтов на домашних компьютерах. Например, она входит в состав популярных пакетов серверных программ Denwer, Apache и OpenServer.

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


Функционал роли «Незарегистрированный пользователь»: просмотр главной страницы; страница «Каталог»; информации о каждом помещении; станица «Компания»; использование формы обратной связи; использование формы «Задать вопрос»; поиск по сайту; страница «Избранное».

Функционал роли «Менеджер»: авторизация; просмотр страницы с вопросами от пользователей; форма для отправки ответа на вопрос пользователя; просмотр страницы с заявками от клиентов; форма для вывески новых объявлений; форма для удаления не актуальных объявлений.

Функционал роли «Администратор»: авторизация; форма для регистрации новых сотрудников; форма для удаления неактуально учётной записи менеджера.

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

Рисунок 18. Структура базы данных.

Имея спроектированную схему базы данных необходимо ее реализовать при помощи такого средства реализации как: PhpMyAdmin, присутствующий в пакете Open Server. Для этого необходимо запустить локальный сервер на персональном компьютере и в появившемся в закрепленной панели значка локального сервера открыть необходимое приложение. При запуске PhpMyAdmin пользователь попадает на страницу с авторизацией, так как это локальный сервер, в поле логин нужно ввести значение «root», что означает суперпользователь, у которого есть доступ к редактированию всех баз данных, а в пароле ничего вводить не надо, так как изначально его никто не устанавливает. После этой манипуляции пользователь попадает на главную страницу, в которой можно создано новую базу данных с наименованием Upravlenie. Важным моментом при создании новой базы данных в PhpMyAdmin, является установка кодировки, наиболее подходящей в разработке русскоязычного веб-сайта это кодировка «utf8_general_ci». В уже созданной базе данных необходимо создать таблицы с уже спроектированными полями.

Основной целью сайта является продвижение продаваемых и сдаваемых помещений компании «Управление и Инвестиции», для достижения этой цели необходимо создать каталог, в котором будет храниться вся информация о существующих предложениях. Таблица каталог включает в себя все необходимые поля, для полного информирования посетителя о интересующем его помещении. Таблица «Katalog» показана в таблице 2.

Таблица 2.

Таблица «Katalog»

Имя

Тип

Длинна/ значения

Авто инкремент

Прочее

IdKatalog

INT

+

PRIMARY

NameLot

TEXT

255

Price

VARCHAR

64

Addres

VARCHAR

64

Type

VARCHAR

64

Metro

VARCHAR

64