Файл: Разработка сайта компании «ООО АрендЗем.pdf

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

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

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

Добавлен: 01.04.2023

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

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

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

Введение

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

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

Целью данной работы является разработка электронного представительства «ООО АрендЗем» с возможностью последующего размещением в сети Интернет.

Сайт должен обеспечивать реализацию следующих функций:

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

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

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

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

На сайте будет доступна регистрация и возможность зайти в свою учетную запись.

1.2 Apache NetBeans IDE

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

  • Php
  • Html
  • JavaScript
  • CSS

Для разработки программ в среде NetBeans и для успешной инсталляции и работы самой среды NetBeans должен быть предварительно установлен Sun JDK или J2EE SDK подходящей версии. Среда разработки NetBeans поумолчанию поддерживала разработку для платформ J2SE и J2EE. Начиная с версии 6.0 NetBeans поддерживает разработку для мобильных платформ J2ME, C++ (только g++) и PHP без установки дополнительных компонентов.


NetBeans IDE Bundle for PHP. Начиная с версии 6.5 Netbeans поддерживает PHP. Сборка для PHP включает:

Так же, данная среда имеет, подсветку синтаксиса, автозавершение кода, подсветка вхождений и ошибок.

  • отладка кода xdebug
  • поддержка тестирования с PHPUnit
  • поддержка PHP фреймворков Symfony и Zend Framework
  • поддержка PHP 5.3
  • поддержка Git

1.3 OpenServer

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

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

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

Выбор именно этой серверной платформы, обосновывается тем, что Open Server позволят создать локальный сервер, для разработки сайта. Так же, не мало важным преимуществом будет то, что в нем присутствует phpMyAdmin, где можно развернуть sql базы данных.

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

2.1 Модули сайта

2.1.1 Модули главной страницы

Сайт состоит из нескольких страниц, Модуль главной страницы: Index.php. На данной странице(рис.1), находятся последние новости компании. Все информационные поля, заполнены текстом с сайта https://fishtext.ru/ и служат в качестве демонстрационного вида.

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

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


Рисунок 2. Схема навигации сайта

Структура модулей сайта отображена на рисунке 3.

Хранение статей осуществляется на сервере, 127.0.0.1(локальный сервер), в котором находятся базы данных. За хранение статей на главной странице, отвечает база “postbase”. За подключение к данной бд и выгрузке статей отвечает модуль ConnectDB/ConnectDBPost.php, за распределение выгруженных статей, в блоки, отвечает скрипт на Php, находится он в Index.php.

Рисунок 3. Модули сайта.

В модуле css/style.css находится важный элемент, находятся стили всех блоков сайта.

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

Head.php – самый небольшой модуль, он отвечает за подключение стилей сайта.

Модуль Header.php отвечает за шапку сайта и навигационное меню. Фрагмент кода с php, отвечает за изменение наименования ссылки “Вход”, на логин, который хранится в куке, после авторизации на сайте. Модуль Footer.php отвечает за нижнею страницу сайта, в которой распложены:

  • Контактный телефон
  • Ссылка на страницу вк
  • Ссылка на страницу фейсбук
  • Ссылка на страницу твитера
  • Информационное сообщение о правах.

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

2.1.2 Модули страниц “о нас” и модуль “пост”

Самый простой модуль, предназначен для перехода на страницу с информацией о компании (рис.4). Модуль находится в about.php, переход на данную страницу осуществляется по средствам клика вкладки “О нас”. Для возвращения на главную страницу, нужно нажать на логотип “АрендЗем”

Рисунок 4. Страница о нас.

Модуль Post.php, отвечает за переход на статью, которую выбрал пользователь, так как статей на главной странице 3, а модуль один, нужная статься открывается по уникальному идентификатору, который присваивается в модуле Index.php. Страница статьи на рисунке 5. Рисунок 5. Страница модуля Post.php


2.1.3 Модули страницы “Анкета”

Данная страница(рисунок 6) обрабатывается модулем Anketa.php. Данная анкета, должна отправляется на почту, указанную в модуле Anketa/Anketa.php. Но так как сервер локальный и без домена, письма не отправляются, а анкеты сохраняются в текстовом виде, в папку OpenServer\userdata\temp. Для работы данного модуля был подключен внешний скрипт на JS, jquery. Данный скрипт позволяет быстро взаимодействовать с элементами html, без дополнительной обработки данных.

Так же модуль anketa.php проводит проверку полей, на количество символов. Имя, Фамилия, Отчество не менее 3х символов, Email должен быть разделен знаками “@” и “.”, о себе не менее 20 символов.

При нарушении условий, будет информационная сообщение об ошибке, при успехе, будет сообщение о успешной отправке анкеты.(рисунок 7 и 8)

Рисунок 6. Страница Анкета

Рисунок 7. Вывод об неуспехе.

Рисунок 8. Успешная отправка

2.1.3 Модули страницы “Вход”

На странице “Вход”, есть две формы, одна для регистрации, другая для авторизации (рис 9). Обработка данной страницы, происходит в модуле auth.php. Данная система регистрации и авторизации работает с базой данных (users) и хранит все данные там.

Рисунок 9. Страница “Вход”

При регистрации, происходит проверка, логин и пароль должны быть, не более 90 символов и не менее 5. В противном случае, будет перенаправление на страницу с ошибкой (рис.10). За проверку полей и внесение данных в СУБД, отвечает модуль login/check.php. Так же, данный модуль хэширует пароли, что не мало важно и гарантирует безопасность.

Рисунок 10. Неудачная регистрация

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

Рисунок 11. Успешная авторизация.


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

Модуль NewPost/PostDB.php отвечает за перенаправление данных в СУБД.

Кнопка выход, очищает куки и перенаправляет на главную страницу, после этого в правом верхнем углу, снова будет кнопка “Вход”.

2.2 phpMyAdmin

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

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

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

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

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

Таблица 1.Структура БД postbase

Количество таблиц

Строки

Тип

Сравнение

Размер

Фрагментировано

1

3

MyISAM

utf8_general_ci

15.9 КиБ

92 Байт

Таблица 2.Структура БД users

Количество таблиц

Строки

Тип

Сравнение

Размер

Фрагментировано

1

3

MyISAM

utf8_general_ci

2.1 КиБ

92 Байт