- •Министерство образования и науки республики казахстан Университет «туран»
- •Дипломный проект
- •Задание на дипломный проект
- •Руководитель: ________ Ахметжанова ж.Б.
- •Содержание:
- •Глава 1. Обоснование потребности в Web-сайте……….……..……………………... 6
- •Глава 2. Разработка и создание Web-сайта……………....…………………………… 24
- •Глава 3. Технико-экономическое обоснование……………………………...………. 66
- •Глава 4. Охрана труда и безопасность жизнедеятельности……………………….. 73
- •Введение
- •Цели и поставленные задачи дипломного проекта
- •Глава 1. Обоснование потребности в Web-сайте
- •1.1 Web-сайт, общие понятия.
- •1.1.1 Классификация Web-сайтов
- •1.1.2 Проектирование и разработка Web-сайта
- •1 Этап — определение целей создания сайта
- •2 Этап — проведение исследований по теме
- •3 Этап — определение типа сайта, разработка тз и структуры
- •4 Этап — разработка макета дизайна сайта
- •5 Этап — html-css вёрстка
- •6 Этап — программирование и установка на cms
- •1.2 Разработка базы данных MySql
- •1.2.1 Связь с базами данных MySql
- •1.2.2 Хранение данных в реляционных базах данных
- •1.3 Разработка административной части сайта
- •1.4 Язык php
- •1.4.1 Общие правила построения php-программы
- •Переменные
- •1.4.2 Связь php с базой данных MySql
- •1.5 Основы css
- •Свойства шрифта
- •Глава 2 Разработка и создание Web-сайта «Детский Хоккейный Клуб»
- •2.1 Постановка задачи при проектировании web- сайта
- •2.2 Общая структура Web-сайта
- •Главная
- •2.2.1 Каталоги в cms Joomla V.1.5.8
- •2.2.2 Работа с базами данных в cms Joomla V.1.5.8
- •Префикс
- •Общепринятые поля таблицы
- •Поля даты
- •Многоязычные требования
- •Запрос в базу данных
- •Написание запросов
- •Получение результата
- •Использование adOdb
- •Управление зарезервированными полями
- •Publishing
- •Checking Out
- •Ordering
- •Поле параметров
- •Поля даты
- •2.3 Дизайн Web-сайта
- •2.3.1 Подробное описание разделов и подразделов
- •2.4 Администрирование
- •2.4.1 Панель администратора
- •Пиктограмма с надписью Сайт.
- •Пиктограмма Меню
- •Пиктограмма Статьи
- •Пиктограмма Компоненты
- •Пиктограмма Расширения
- •Пиктограмма Инструменты
- •2.4.2 Создание пунктов меню
- •2.4.3 Редактирование материала
- •2.4.4 Установка Шаблона Web-сайта
- •2.4.5 Вставка видео на Web-сайт
- •Вставка видео с YouTube.Com
- •2.4.6 Опрос пользователей Web-сайта
- •Глава 3. Технико-экономическое обоснование
- •3.1 Оценка общего состояния рынка веб-разработки
- •3.2 Стоимость разработки
- •Стоимость операционной системы
- •Системные требования html-редакторов
- •Минимальные требования и расходы
- •Необходимые требования и расходы
- •Оптимальный вариант для создания Web-сайта «Детский хоккейный клуб»
- •Глава 4. Нормы и требования охраны труда на рабочем месте разработчика Web-сайта
- •4.1 Общие положения
- •4.2 Требования безопасности во время эксплуатации эвм
- •4.3 Требования безопасности во время работы
- •4.4 Выводы
- •Заключение
- •Список использованной литературы
- •16. Д. Н. Колисниченко. Движок для вашего сайта. Cms Joomla!, Slaed, php Издательство: бхв-Петербург, 2008г.
- •34. Билл Скотт, Тереза Нейл. Проектирование веб-интерфейсов. 2010г.
- •Приложения
Управление зарезервированными полями
Наша таблица содержит все зарезервированные поля, которыми мы можем управлять с помощью методов класса JTable. Рассмотрим управление этими полями подробнее.
Publishing
Для публикации и снятия с публикации мы можем использовать метод publish(). Если таблица содержит поле checked_ out, то мы можем быть уверены что запись таблицы не редактируется другим пользователем. Приведем пример публикации:
$publishIds = array($id);
$user =& JFactory::getUser();
if (!$table->publish($publishIds, 1, $user->get('id')))
{
// обрабатываем ошибки
}
Первый параметр - это массив из id записей, которые нужно опубликовать или снять с публикации. Второй параметр необязательный, и указывает публикуем мы запись (значение 1), или снимаем с публикации (значение 0). По-умолчанию имеет значение 1. Последний параметр используется только в случае, если существует поле checked_out, и указывает id пользователя редактирующего запись. Метод возвращает значение true если все прошло успешно.
Hits
Произвести инкремент над записью можно с помощью метода hit(). Для примера мы установим id записи и выполним инкремент.
$table->set('id', $id);
$table->hit();
Также мы можем указать в параметре метода hit() нужный нам id. Но мы должны помнить что при этом обновиться буфер.
$table->hit($id);
Checking Out
Перед тем как мы начнем блокировать наши записи, мы должны убедиться что запись уже не заблокирована. Это нужно, чтобы не получилось, что несколько пользователей одновременно редактируют одну запись. Для этого мы можем использовать метод isCheckOut(). В этом примере мы выполняем проверку:
$table->load($id);
$user =& JFactory::getUser();
if ($table->isCheckedOut($user->get('id')))
{
// выполняем действия если запись заблокирована
}
Далее мы блокируем запись под пользователя:
$table->load($id);
$user =& JFactory::getUser();
if (!$table->checkout($user->get('id')))
{
// обрабатываем ошибки
}
Для того чтобы обрабатывать запись используем следующий метод:
$table->load($id);
$user =& JFactory::getUser();
if (!$table->checkin($user->get('id')))
{
// обрабатываем ошибки
}
Запомните, что эти методы можно использовать только для залогенных пользователей.
Ordering
Когда мы хотим расположить элементы в определенном порядке, JTable предоставляет нам для этого набор методов. Первый из рассмотренных нами методов будет reorder(). Этот метод исправляет ошибки в порядке расположения записей в таблице.
$table->reorder();
В более сложных таблицах записи обычно разбиты по группам, и для этого в метод reorder() нужно дописать дополнительный параметр. Представим, что в нашей таблице есть поле group. В этом примере мы упорядочим записи в группе 1.
$db =& $table::getDBO();
$where = $db->nameQuote('group').' = 1';
$table->reorder($where)
Заметьте, что мы получаем объект базы данных не из JFactory, а из таблицы! Ранее мы уже использовали метод getNextOrder(). Метод выдает нам следующую позицию в порядке упорядочивания. Как и в случае с reorder(), мы имеем возможность определения груп. Например, получим следующий номер порядка для группы 1.
$db =& $table::getDBO();
$where = $db->nameQuote('group').' = 1';
$nextPosition = $table->getNextOrder($where);
И последний метод - это move(). Он нужен для перемещения записи на одну позицию вверх или вниз. Переместим на примере запись вверх.
$table->load($id); $table->move(-1); Опять у нас есть возможность для указания групп. Покажем это на примере:
$db =& $table::getDBO();
$where = $db->nameQuote('group').' = 1';
$table->load($id);
$table->move(1, $where)