В данном приложении к статье Краткое руководство по созданию форм в RUNCMS вы найдете описание всех классов пакета "XoopsForm" Дается описание всех конструкторов и только некоторых (рассматриваемых в статье) методов.
Базовый класс XoopsForm
XoopsForm
XoopsSimpleForm
XoopsTableForm
XoopsThemeForm
Базовый класс XoopsFormElement
XoopsFormElement
XoopsFormButton
XoopsFormCheckBox
XoopsFormElementTray
XoopsFormDateTime
XoopsFormFile
XoopsFormHidden
XoopsFormLabel
XoopsFormPassword
XoopsFormRadio
XoopsFormRadioYN
XoopsFormSelect
XoopsFormSelectCountry
XoopsFormSelectGroup
XoopsFormSelectLang
XoopsFormSelectMatchOption
XoopsFormSelectModule
XoopsFormSelectTheme
XoopsFormSelectTimezone
XoopsFormSelectUser
XoopsFormText
XoopsFormTextDateSelect
XoopsFormTextArea
XoopsFormDhtmlTextArea
Класс XoopsSimpleForm – создает наиболее простой вариант формы
Элементы формы не расположены в таблице, идут друг за другом с переносом на новую строку
string$name - Имя формы - соответствует атрибуту "name" тега <form>
string$action - Определяет обработчик формы. Соответствует атрибуту "action" тега <form>
string$method - Определяет, HTTP метод используемый для отправки данных формы соответствует атрибуту "method" тега <form> По умолчанию POST
Пример (смотрите так же первую часть статьи):
$form = new XoopsTableForm("Форма", "form", "index.php");
Класс XoopsThemeForm – создает форму, элементы которой располагаются в таблице оформленную в соответствии с темой портала
Все элементы расположены в таблице. Каждый элемент на отдельной строке. Строки разделены на две ячейки – слева размещается название элемента справа сам элемент. Цвет фона ячеек различается.
string$name - Имя формы - соответствует атрибуту "name" тега <form>
string$action - Определяет обработчик формы. Соответствует атрибуту "action" тега <form>
string$method - Определяет, HTTP метод используемый для отправки данных формы соответствует атрибуту "method" тега <form> По умолчанию POST
Пример (смотрите так же первую часть статьи):
$form = new XoopsThemeForm("Форма", "form", "index.php");
Основные методы класса XoopsForm
Метод addElement - с помощью этого метода мы добавляем в форму созданные нами элементы.
addElement($ele)
Параметры:
object$ele – содержит экземпляр класса конкретного элемента
Пример:
// создаём объект $text - элемент text (текстовое поле) $text = new XoopsFormText ("Однострочное текстовое поле", "text", 50, 100); // Добавляем элемент text в форму form $form->addElement($text);
Метод setExtra - с помощью этого метода мы можем устанавливать значения дополнительных атрибутов формы
setExtra($extra)
Параметры:
string$extra – содержит дополнительный атрибут тега <form> Обратите внимание, на то, что формат должен быть: "имя атрибута = значение атрибута", например "enctype='multipart/form-data'"
Пример:
// Определяем content type содержимого формы как - "multipart/form-data" $form->setExtra("enctype='multipart/form-data'");
Метод setRequired – добавляет имена элементов формы, которые необходимо проверить на отсутствие значения
setRequired($required)
Параметры:
array$required - содержит массив, параметры которого - это имена проверяемых элементов формы. Обратите внимание, что проверка проводится, используя JavaScript на стороне клиента.
Пример:
// Включаем проверку полей "text" и "textarea" на заполнение стороне клиента $form->setRequired(array("text", "textarea"));
Метод display – отображает форму
display()
Пример:
// Выводим форму $form->display();
Класс XoopsFormHidden – создает скрытое текстовое поле
Конструктор: XoopsFormHidden($name, $value)
Параметры:
string$name – имя скрытого элемента
string$value – значение скрытого элемента
Пример:
$hidden = new XoopsFormHidden("op", "modDownloadS"); $form->addElement($hidden);
Re: Описание классов пакета XoopsForm. (Приложение к статье
Недавно Я Тут
Регистрация: 15.11.05
Сообщений: 8
Откуда:
Вот по поводу XoopsFormRadio!!! Я мучался добавляя доп. форму к регистрационой формы, пытаясь добавить возможнось выбора пола. И как не крутил всегда вылетал в белый экран. Оказалось что надо писать не $form->addElement($radio); а $reg_form->addEle казалось бы такую мелочь не заметил... У ня версия 1.2 runcms, уже всю ее перелопатил что не узнать.