Вход/Регистрация
Разрботка расширений для CMS Joomla
вернуться

Седова Яна Анатольевна

Шрифт:

Запрос может быть сформулирован в виде строки либо разбит на составляющие и построен с помощью методов класса JDatabaseQuery.

Запрос задается для последующего выполнения методом setQuery, а выполняется либо методом query, либо, если нам необходимо получить результат, одним из методов для получения форматированного результата: loadResult, loadRow и т.д.

Для каждой таблицы, использующейся расширением, необходимо создать класс, производный от JTable. Для каждого поля таблицы необходимо создать одноименное поле этого класса. Производный от JTable класс наследует в числе прочих методы bind, store, load и delete, позволяющие управлять записями таблицы без единой строки SQL-кода. Когда компонент получает массив переменных запроса, он осуществляет связывание, то есть присваивает каждому полю этого класса значение элемента массива, ключ которого совпадает с названием данного поля.

Существуют методы класса JTable для управления часто используемыми полями ordering, checked_out/checked_out_time, published и hits.

Вопросы

Что такое реальный и символический префиксы?

Какие операции необходимо осуществить для выполнения запроса к базе данных Joomla?

Каким образом может быть сформулирован SQL-запрос?

Какие методы задают и выполняют запрос?

Для чего создается производный от JTable класс?

В чем заключается связывание?

Каким образом осуществляется управления часто используемыми полями?

Упражнения

Адаптируйте код из раздела " Практика" для своего варианта (см. список вариантов в дополнительных материалах).

Генерация элементов HTML (класс JHTML)

Лекция посвящена классу JHTML и поддерживающим классам. Рассмотрены методы для вывода элементов XHTML.

Цель лекции:Изучить готовые методы Joomla для генерации и отображения элементов XHTML и поведений JavaScript.

Основной метод класса JHTML

Joomla содержит методы для генерации и отображения элементов XHTML и поведений JavaScript. Эти методы вызываются с помощью

mixed _(string $type)

Несмотря на то, что в прототипе метода JHTML::_ указан всего один параметр, на практике их, как правило, бывает больше. Они интерпретируются так: по первому параметру метод _ определяет, какой метод необходимо вызвать, а остальные параметры передаются в этот метод.

Параметр $type может быть трех видов:

Название метода самого класса JHTML. Например, $type = 'image' приведет к вызову JHTML::image.

<имя файла>.<имя метода>. Будет вызван метод поддерживающего класса JHTML<Имя файла>.<имя метода>. В имени поддерживающего класса первая буква <имени файла> станет заглавной. Например, если $type='select.genericlist', то будет вызван метод JHTMLSelect::genericlist.

<префикс>.<имя файла>.<имя метода> и будет вызван метод <префикс>.<Имя файла>.<имя метода>.

Методы класса JHTML

Класс JHTML содержит восемь методов для вывода элементов XHTML.

Поле для ввода даты и пиктограмма, по щелчку на которой появляется календарь

string calendar(string $value, string $name, string $id, string $format = '%Y-%m-%d', array $attribs = null)

где:

$value - значение даты; $name - имя текстового поля; $id - id текстового поля; $format - формат даты; $attribs - дополнительные атрибуты, которые должны быть выведены в теге <input>.

Для примера выведем текущую дату (рис. 3.1):

echo JHTML::_('calendar', date('Y-m-d',time), 'created', 'created', '%Y-%m-%d', array('size'=>10,'style'=>"class='inputbox'"));

Рис. 3.1. Поле для ввода даты и пиктограмма для вывода календаря

Строка, содержащая дату в заданном формате и часовом поясе

string date(string $input = 'now', string $format = null, mixed $tz = true, bool $gregorian=false)

где:

$input - строка в формате, подходящем для функции date; $format - формат, к которому необходимо привести дату; $tz - одна из временных зон, поддерживаемых PHP (их список можно найти на странице ссылка: http://www.php.net/manual/ru/timezones.php). Кроме того, $tz может иметь логическое значение: при $tz=true временная зона берется из настроек пользователя, при $tz=false - из настроек сервера; $gregorian - при false для форматирования даты будет использоваться локальный календарь.

  • Читать дальше
  • 1
  • ...
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: