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

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

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

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

Добавлен: 31.03.2023

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

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

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

Дерево вызова программных модулей предоставлен на рисунке 13.

Рисунок 13. Дерево вызова программных модулей

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

Программирование без-сайта подразумевает разработку и доработку модулей и программ, которые не предусмотрены стандартной версией Content management system. Обеспечивая разработку дополнительных программируемых уникальных элементов своего веб-сайта, создается уникальное преимущество своего веб-сайта, позволяющее повысить его конкурентоспособность в интернет пространстве.

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

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

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

Таблица 1.

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

Раздел сайта

Наименование файла

Тип страницы

Описание

Главная

/index.php

Страница с динамической информацией

Ознакомление с основной информацией фирмы

Компания

/company.html

Статическая HTML

страница

Описание компании

Контакты

/contact.html

Статическая HTML

страница

Контактная информация для связи

Выкуп объектов

/buyout.html

Статическая HTML

страница

Перечень достоинств выкупа компанией

Продолжение таблицы 1.

Раздел сайта

Наименование файла

Тип страницы

Описание

Сотрудники

/employees.php

Страница с динамической информацией

Список сотрудников компании

Вопрос ответ

/questionAnswer.php

Страница с динамической информацией

Ответы на вопросы и форма для новых вопросов

Авторизация

/foremployees. php

Страница с динамической информацией

Предупреждение для пользователей, что авторизация только для сотрудников

Поиск

/search.php

Страница с динамической информацией

Ссылка присутствует на всех страницах, доступных для простого пользователя

Авторизация

/vhod.php

Страница с динамической информацией

Авторизация пользователя

Не верный пароль

/NoPas.php

Страница с динамической информацией

Введённый пользователем пароль не верен

Меню администратора

/menuadmin.php

Страница с динамической информацией

При авторизации администратора появляется меню администратора

Регистрация новых пользователей

/AdminNewEmp.php

Страница с динамической информацией

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

Удаление старых пользователей

/AdminDeleteEmp.php

Страница с динамической информацией

Выбрать из списка не актуальную учетную запись и удалить ее

Меню менеджера

/ menumanager.php

Страница с динамической информацией

При авторизации менеджера появляется меню менеджера


Продолжение таблицы 1.

Раздел сайта

Наименование файла

Тип страницы

Описание

Создать новое объявление

/NewAd.php

Страница с динамической информацией

Ввести данные и отправить их в базу данных, для создания нового объявления

Удалить старое объявление

/ DeleteAd.php

Страница с динамической информацией

Выбрать из списка не актуальное объявление и удалить его

Вопросы от пользователей

/questionManager.php

Страница с динамической информацией

Выбрать вопрос и заполнить форму для ответа

Заявки на помещение

/requesr.php

Страница с динамической информацией

Просмотр заявок и их обработка, не актуальные удалять

Написать сотруднику

/mail.php

Страница с динамической информацией

При выборе сотрудника ему на почту можно написать личное сообщение

Страница объекта

/position.php

Страница с динамической информацией

Полная информация об объекте

Запись на просмотр

/prosmotr.php

Страница с динамической информацией

Форма для отправки заявки на просмотр объекта

Таким образом можно сделать вывод, что сайт состоит из двух частей:

  • публичной;
  • административной.

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

Таким образом можно сказать, что административная часть это – система управления сайтом.

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

Термин относится к контент-менеджер вида профессиональной деятельности - редактор сайта.

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

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


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

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

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

Административная часть включает:

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

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

Рисунок 14. Карта сайта

    1. Описание программных решений

В написании программного кода для программного продукта был использован язык программирования Personal Home Page (PHP).

PHP – скриптовый язык общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков, применяющихся для создания динамических веб-сайтов. [5]

PHP – это серверный язык программирования, который исполняется на стороне сервера, в то время такой язык программирования, как JavaScript исполняется в браузере на стороне пользователя.

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

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

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

Клиентским компьютерам, осуществляющим доступ к PHP-скриптам, понадобится только браузер.

Существует несколько стилей программирования на PHP. Для реализации поставленной цели данной работы был выбран объектно-ориентированный стиль программирования (ООП). Также существует процедурный стиль.

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


Первое, что нам следует сделать для того, чтобы получить данные из таблицы базы данных – установить соединение с базой данных. Это показано в приложении 1. Для этого создаем новый объект с наименованием $mysqli и присваиваем ему новые значение в виде new mysqli и в скобках указываем наши данные, такие как:

  • наименование хостинга – "localhost";
  • логин для входа – "root";
  • пароль, если такой имееется – "";
  • наименование база данных – "upravlenie".

Далее идет проверка соединения условным оператором if, у условиях которого: $mysqli->connect_error. При условии выполнения условия, то выведется ошибка соединения, если все подключено, тогда выполняются следующие команды.

После чего можно вытаскивать значения из базы данных с помощью цикла foreach, в котором происходит объектно-ориентированным стилем подключение к базе данных – $mysqli->query,а в скобках записывается SQL, например: SELECT * FROM question, что означает берем все столбцы из таблицы question. Это продемонстрировано в приложении 2. После чего записываем последовательно значения строк в переменную $row. Внутри цикла можно выводить переменную $row с ее значениями столбца, к примеру: echo $row['QuestionUser'].

Также важно записать данные вводимые со страницы пользователем в базу данных. Этот процесс показан в 1 приложении. Для этого необходимо создать новую пременную, к примеру $result, присвоить ей подключение к базе данных: $mysqli->query и в скобках хаписать SQL запрос, например: "INSERT INTO employees (NameEmployees, PostEmployees, PhoneEmployees, EmailEmployees, Login, Password, PasswordHash, Status) VALUES ('$fioEmp' , '$PostEmpl' , '$PhoneEmpl' , '$EmailEmpl' , '$login','$password' , '$passwordHash' , '$statusEmp')". В данном примере происходит следующее: записать в таблицу employees в значения в столбцы базы данных, наименования которых, перечисляются в первых скобочках и записать в них значения, взятые из переменных перечисленных во-вторых скобочках.

Для проверки результата работы записи информации в базу данных – существует проверка, происходит она следующим образом, в условиях условного оператора if записывается переменная, в которой происходила записть данных и сравнивается с бинарным значением true. В случае, если значение правдивое, то есть равное true, то пользователю выводится надпись: "Информация занесена в базу данных", в ином случае "Информация не занесена в базу данных".

Обязательным элементом работы с базой данных является закрытие соединения. Если не его не закрыть, то страница сайта будет сильнее тормозить, что не желательно, потому что любая работа с данными из базы данных уже пожирает трафик и время клиента. Время клиента является важным атрибутом в работе с ним. Поэтому используется простейшая функция mysqli_close, в параметроах данной функции необходимо записать объект, к которому была подключена ранее база данных, к примеру $mysqli.


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

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

Протокол HTTP является протоколом "без сохранения состояния". Это означает, что данный протокол не имеет встроенного способа сохранения состояния между двумя транзакциями. То есть когда пользователь открывает сначала одну страницу сайта, а затем переходит на другую страницу этого же сайта, то основываясь только на средствах, предоставляемых протоколом HTTP невозможно установить, что оба запроса относятся к одному пользователю. Таким образом необходим метод, при помощи которого было бы отслеживать информацию о пользователе в течение одного сеанса связи с Web-сайтов. Одним из таких методов является управление сеансами при помощи предназначенных для этого функций. Для нас важно то, что сеанс по сути, представляет собой группу переменных, которые, в отличие от обычных переменных, сохраняются и после завершения выполнения PHP-сценария. [6]

При работе с сессиями различают следующие этапы:

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

Самый простой способ открытия сессии заключается в использовании функции session_start, которая вызывается в начале PHP-сценария. Эта функция проверяет, существует ли идентификатор сессии, и, если нет, то создает его. Если идентификатор текущей сессии уже существует, то загружаются зарегистрированные переменные сессии.

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

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