Сопровождение учебного процесса ПК БГТУ

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



Вµ они обрабатываются функцией Login (); в которой происходит идентификация пользователя и запись в массив сессии необходимой информации. После авторизации на месте полей для авторизации выводится приветствие и ссылка для выхода из системы. При нажатии на ссылку выполняется функция Logout (); которая очищает переменные сессии и разрушает сессию.

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

admin. php - модуль административной панели. Обеспечивает добавление, редактирование и удаление новостей, создание списка замен и запуска рассылки. Доступ к странице admin. php имеет только супер пользователь который задается в файле настроек сервиса.

news. php - модуль новостей. Выводит новости на странице новостей. Страница доступна для всех пользователей.

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

include/head. php - модуль горизонтального меню. Подключается ко всем модулям, кроме auth. php и config. php. В зависимости от того, авторизован ли пользователь, скрывает ссылку на страницу регистрации. Так же этот модуль отображает ссылку на страницу административной панели только суперпользователю.

config. php - модуль настрое. Служит для задания настроек соединения с базой данных, а так же для указания администратора системы.

2.2 Разработка структуры данных

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

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

Немаловажным фактором является ее бесплатность. MySQL распространяется на условиях общей лицензии GNU (GPL, GNU Public License). [10]

Рисунок 2.2.1 - Структура данных

Таблица для хранения расписания raspisanie

Таблица состоит из следующих полей

Таблица 2.2.1 - Описание полей таблицы raspisanie

Имя поляХранимая информацияidХранит идентификатор группы pnХранит расписания для групп на понедельникvtХранит расписания для групп на вторникsrХранит расписания для групп на средуchtХранит расписания для групп на четвергptХранит расписания для групп на пятницуsbХранит расписания для групп на субботу

Рисунок 2.2.2 - Структура таблицы raspisanie

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

Информация в ячейках таблицы raspisanie зашифрована следующим образом:

[предм1>преп1>н. аудит1] | [предм2>преп2>н. аудит2] | [предм2>преп2>н. аудит2]

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

Расшифровка данных из ячеек производится с помощью функций getLessonsWeek ($group) и getLessonsTomottow ($group), которые на основе зашифрованной в таблице информации формируют результирующую таблицу на неделю и на следующий учебный день соответственно. Аргументом для функций служит идентификатор группы.

Таблица для хранения информации о зарегистрированных пользователях users

Рисунок 2.2.3 - Структура таблицы users

Таблица состоит из следующих полей:

Таблица 2.2.2 - Описание полей таблицы users

Название поляХранимая информацияidХранит идентификатор пользователя. Первичный ключ, автоинкремент. loginХранит логин пользователя для входа в системуpswdХранит md5-хэш пароля пользователяFIOСодержит Фамилию и имя зарегистрировавшегося студентаemailХранит адрес электронной почты пользователяshowcontantОтвечает за отображение контактной информации пользователя в общедоступных разделах сайтаicqХранит UIN пользователяst_groupИдентификатор учебной группы, в которой состоит студент

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

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

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