Использование PHP фреймворков в разработке сайта

Курсовой проект - Компьютеры, программирование

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

возможности PHP 5.3, включая пространство имен и замыкания. Ключевые особенности:

Поддержка фреймворка для тестирования PhpUnit;

Поддержка отладки PHP и JavaScript кода;

Удаленная выгрузка по FTP, SFTP, сетевому диску с автоматической синхронизацией;

Поддержка спецификаций HTML5 и EcmaScript 5.

Интеграция с системами контроля версий:CVS, SVN, Git, Perforce, Mercurial;

Интеграция с баг-треккерами.

 

 

2.2 Разработка дизайна проекта и верстки

 

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

Дизайн сайта выполнен в серебристо-пурпурных тонах (рис. 2.3). Серебристый цвет символизировать строгость, стиль, силу. Пурпурный подчеркивает стиль и дополняет его вкусом. Дизайн умеренно консервативен, традиционен и говорит о мужском стиле. Шапка сайта с логотипом и баннером отражает название и выгодное коммерческое предложение.

 

 

2.3 Проектирование и создание базы данных

 

Во время проектирования база данных были выделены следующие таблицы:

Таблица категорий Category, которая хранит в себе название категорий на 3-х языках в древовидном виде Adjacency List: titleRu, titleEn, titleRo и parent;

Таблица товаров Price с названиями и описаниями на 3-х языках, цену, размеры, наличие товара, а так же дату добавления и поле для связи с категорией: titleRu, titleRo, titleEn, descrRu, descrRo, descrEn, idCategory, cost, time, present, sizes;

Таблица для хранения пути к фотографиям Photo с полем для связи с товаром: idItem, path;

Таблица для хранения текстовых страниц Text с названиями и описаниями на 3-х языках, а так же красивым адресом для ссылок: titleRu, titleRo, titleEn, descrRu, descrRo, descrEn, name.

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

 

2.4 Cоздание основы приложения и конфигурация

 

При создании проекта использовался виртуальный хост в denwer, расположенный по пути z:\home\magazin.local\www. Использование виртуального хоста облегчает разработку и тестирование проекта.

,frameworkz:\home\magazin.local\www.denwer,,,,z:\home\magazin.local\www\framework\yiic.bat,php.exephp:z:\usr\local\php5\php.exe.:">Для создания приложения на основе фреймворка yii, необходимо загрузить последнюю версию с официального сайта www.yiiframework.com , распаковать и скопировать папку framework в z:\home\magazin.local\www. Так как для установки под denwer, инструкция отличается от официальной, то, перед установкой, необходимо отредактировать файл z:\home\magazin.local\www\framework\yiic.bat, указав в нем вместо php.exe полный путь к php: z:\usr\local\php5\php.exe. После этого необходимо запустить командный интерпретатор и ввести следующие команды:

z::\>cd\home\magazin.local\www:\home\magazin.local\www>framework\yiic.batwebappmagazin">C:\Users\root>z::\>cd \home\magazin.local\www:\home\magazin.local\www>framework\yiic.bat webapp magazin

При появлении вопроса Create a Web application under Z:\home\magazin.local\www\magazin? [yes|no] необходимо нажать y, после чего будет создан каркас приложения и выведен список созданных файлов (рис. 2.4).

 

 

Созданная основа обладает рядом базовых функций, такими как встроенная авторизация, вывод статических страниц и т.д.

Для удобства переноса на другой web-сервер или хостинг, после создания, каркас приложения был вынесен из папки magazin на один уровень выше, а в index.php и index-test.php исправлен путь к фреймворку.

Файл конфигурации приложения расположен по следующему пути: protected/config/main.php. Файл описывает настройки приложения в виде ассоциативного php-массива. Для настройки подключения к бд был настроен компонент приложения db в секции components:

db=>array(

// строка в формате dsn для подключения к БД

connectionString => mysql:host=localhost;dbname=magazin,

// имя пользователя

username => root,

password => ,

charset => utf8,

),

 

2.5 Генерация каркаса кода с помощью кодогенератора Gii

 

После того как основа приложения создана и настроена, можно приступить к разработке контроллеров и моделей. Начиная с версии 1.1.2, фреймворк доступен вместе с встроенным генератором кода Gii. Gii позволяет генерировать модели на основе таблиц в базе данных, а так же CRUD-контроллеры для основных действий по управлению записями, такими как добавление записи (Create), просмотр списка записей, просмотр записи (Read), редактирование записи (Update) и удаление (Delete). Для активации Gii в файл конфигурации приложения было добавлено описание подключения модуля gii:

gii=>array(

system.gii.G