API на формуляр

Публикувано на 2012.04.14 в раздел Drupal

Много е удобно да се използват механизмите, вградени в Drupal, за създаване на потребителски форми. Това е много по-удобно, отколкото ръчно писане на HTML код от нулата.

Веднага давам линк към документацията, на която ще се позовем http://api.drupal.org/api/drupal/developer!topics!forms_api_reference.html/7

Това е много удобна таблица и също пример за използване на всеки елемент.

За да използвате формуляра, трябва да създадете функция, която да връща масив от елементи на формуляра. Нека направим проста форма с едно поле за въвеждане и радио бутон. Всеки елемент масив $форма Е html елемент на формуляра. Всеки елемент също е масив. Стойността на ключовете му определя какъв ще бъде този или онзи елемент, как ще се генерира html кодът на формуляра.

Ключ #Тип Типът на елемента (поле за въвеждане, област за въвеждане, падащ списък, скрито поле и т.н.).

#заглавие - отговаря за заглавката на полето

#описание - описание на полето

#стойност по подразбиране - стойност по подразбиране

И т.н. Предлагат се аргументи за различни видове елементи. Вижте документацията.

За да покажете този формуляр, трябва да се обърнете към него и да го изобразите. За да получите формата, използвайте функцията drupal_get_form (), което предаваме като аргумент документ за самоличност форми. Идентификаторът на формуляра е същият като името на функцията, която връща масив от нейните елементи. В нашия случай е така my_първо_форма.

Да се ​​върнем към функцията за изобразяване на страницата test_url - Главна функция.

Нека създадем променлива $форма, който ще съдържа нашата форма.

В 17-ия ред в променливата на формата е поставен масив от елементи на формуляра, а в 18-ти този масив изобразени в html код. И на 19-ти извеждаме тази форма.

Ако всичко е направено правилно, тогава в браузъра ще видим нашата форма.

елементи формуляра

И трите полета са представени успешно.

Сега манипулаторът на формуляра. Манипулаторът на формуляр не трябва да създава отделен файл, както беше в случая с обичайните html форми. Манипулаторът също ще бъде функцията.

По подразбиране името на тази функция ще бъде _Изпращане . Но ако искате, можете да посочите всяко друго име във функцията за формуляр.

Нека създадем функция my_first_form_submit. Той ще работи, когато изпратим формуляра си. За да приемете данните, изпратени от формуляра, трябва да се обърнете към втория му аргумент - $форма_държава, предадени му чрез препратка. Но можете да използвате и стандартния масив $ _ПОСТ.

Нека проверим функцията, като покажем стойността на всички елементи на формуляра.

Обърнете внимание - показваме само стойността на елемента с ключа стойности. Тъй като в масива форма_държава много сервизна информация, която не ни е необходима. Проверка на работата на формуляра.

формуляр

И ние го изпращаме.

формуляр

Променливите, от които се нуждаем, са име и настройки. Сега можем да ги запишем във файл, в база данни или да ги използваме по наша преценка.

Сега ще направим всичко по същия начин Форма API.

Нека създадем нова форма с име my_следващия_форма. Първо, просто създайте всички елементи и след това конфигурирайте тяхното показване.