Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Poyasnitelnaya_zapiska_Prokopenko_N.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
986 Кб
Скачать
☆

2.4 Разработка системы управления сайтом

Один из основных этапов создания сайта – установка системы управления сайтом (CMS). CMS позволяет создавать и редактировать информационное наполнение сайта, размещать различные типы данных: текст, изображения, видео, файлы различных форматов.

Вообще для создания сайта могут использоваться различные CMS: шаблонные (бесплатные или коммерческие) или CMS, разработанные собственно веб-студиями. Обычно студии стараются не использовать бесплатные CMS, хотя, на первый взгляд, это удачный вариант. Дело в том, что впоследствии часто возникают сложности с поддержкой таких сайтов. Ведь поскольку эти CMS бесплатны, за ошибки, в них присутствующие, никто не отвечает. Также никто не гарантирует поиск ошибок и их исправление в новых версиях CMS, поэтому ошибки придется исправлять самим студиям. Кроме того, бесплатные CMS обычно трудно расширяемы (хотя это зависит от задачи).

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

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

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

CMS состоит из главного класса, который принимает запрос, обрабатывает его и исходя из этого запроса формирует результат. В данной системе он называется modules_class.php, именно в нем происходят все операции по приему, обработке и выводе информации на экран. Более детально такая система рассмотрена ниже на Рисунке 3.

Рисунок 7 Схема работы CMS

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

Поскольку проект «Сайт колледжа» разбит на две части «Разработка интерфейсной части сайта колледжа» и «Разработка программной части сайта колледжа», шаблон уже готовый, и согласно теме моей дипломной работы я разрабатываю только систему управления сайтом. Задачи поставлены остается только приступить к работе.

Начинаю сразу с третьего этапа разработки CMS – «Создание базы данных». Для ее создания я использую PHPMyAdmin.

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

Рисунок 8 Интерфейс СУБД PHPMyAdmin

Далее согласно поставленным задачам я создаю необходимые таблицы, а именно: articles(статьи), images(картинки к статьям), menu(содержит ссылки меню сайта), slider_images(картинки для слайдера в шапке сайта), users(пользователи у которых есть доступ к админ-панели сайта), faq(часто задаваемые вопросы и ответы на них).

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

Рисунок 9 Фрагмент кода из класса database_class.php

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

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

Рисунок 10 Фрагмент кода из класса global_class.php

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

Рисунок 11 Фрагмент кода из класса article_class.php

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

Теперь мы приблизились к самому интересному, на мой взгляд, этапу разработки шаблонизатора. Спланируем принцип его работы.

Рисунок 12 Схема работы шаблонизатора

Пользователь будет общаться с index.php, который будет выводить данные согласно запросу пользователя. Запрос пользователя будет приниматься index.php как GET-запрос, который прописывается в ссылке (например: http://www.site.com/index.php?view=news). Данный запрос принимается как ассоциативный массив $_GET($view => news), после обработки запрос отсылается в шаблонизатор, откуда отсылается запрос в БД. Значение «NEWS» отвечает за вывод блога новостей, следовательно, из базы данных будут возвращены статьи и картинки к этим статьям. После того как ответ из БД получен, шаблонизатор берет шаблон из TPL-файла, обрабатывает его и возвращает готовую HTML-страницу в index.php, после чего она доступна для пользователя.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]