(c) Larry Ewing, Simon Budig, Garrett LeSage
с 1994 г.

Кафедра Информатики и Математического Обеспечения

ПетрГУ | ИМиИТ | О кафедре | Мобильные платформы | Лаборатория ИТС | Семинары НФИ/AMICT
Сотрудники | Выпускники | Учебный процесс | Табель-календарь | Курсовые и выпускные работы
Вычислительные ресурсы | Публикации | Архив новостей | Контактная информация

MySQL+Yii

Цель работы

На примере персонального альбома освоить создание комплексных компонентных Web-приложений с использованием возможностей PHP-фреймворка Yii. Изучить php-средства работы с сервером БД MySQL, сессии, функции доступа к файловой системе, загрузку файлов на сервер, обработку данных html-форм.

Описание работы

Реализовать систему "Персональный альбом", включающую следующие страницы:

Страница 1 (С1)
Выводит форму для ввода логина/пароля, выполняет подключение к БД, осуществляет проверку правильности введенных данных. В случае успешной проверки выполняется перенаправление на С2
Страница 2 (С2)
Позволяет просматривать изображения, имеющиеся в альбоме. Выводит форму для загрузки (upload) нового изображения с переходом на C3 при нажатии submit. Выводит форму для выбора удаляемого изображения с переходом на С4 при нажатии submit
Страница 3 (С3)
Показывает загруженное пользователем изображение. Выводит форму для добавления подписи к рисунку с переходом на C2 при нажатии submit
Страница 4 (С4)
Показывает удаляемое изображение с подписью. Выводит форму с вопросом "Действительно удалить?" для удаления выбранного изображения с переходом на C2 при нажатии submit

Основные требования

1. MVC. Архитектура Web-приложения должна соответствовать шаблону MVC, система файлов и каталогов - стандартной структуре директорий Yii-приложения.

2. Аутентификация. Для аутентификации необходимо использовать механизм сессий, исключив возможность загрузки страниц альбома без ввода логина/пароля (менеджер авторизации yii).

3. Данные. Данные для аутентификации пользователей должны храниться на сервере БД MySQL kappa в следующих таблицах:

Таблица users с полями login, password
В поле login - идентификатор пользователя (содержит латинские буквы в нижнем регистре, цифры и знак подчеркивания, до 16 символов, начинается с буквы). Поле password хранит пароль пользователя в зашифрованном виде (к примеру, можно использовать функцию md5). Вручную в таблицу добавляется хотя бы одна запись для владельца альбома
Таблица images из лабораторной #4

Данные для подключения к БД должны быть вынесены в файл конфигурации приложения yii. Для работы с БД необходимо использовать Active Record.

4. Файловая система. Все загруженные изображения должны храниться в каталоге upload, который размещен в каталоге приложения. Необходимо установить полные права (rwx) на каталог upload для учетной записи wwwrun (setfacl).

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

Критерии оценки работы

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