Формы ввода данных Drupal

Всё про веб
Формы ввода данных Drupal

Сегодня веб-приложения стали неотъемлемой частью почти каждого сектора экономики, поскольку в процессе работы людям необходимо получать и обрабатывать большие объемы данных.

Данные извлекаются с помощью HTML-форм, которые могут быть использованы для создания различных типов полей ввода, таких как "текстовые поля" или "радиокнопки". — Использование тегов HTML.

Эти формы трудно сохранить или обновить, если они написаны непосредственно в HTML-коде. Drupal предоставляет отличный способ определения форм непосредственно через PHP-код, и система сама генерирует конечную форму.

Таким образом, Drupal позволяет легко создавать и поддерживать формы. В этой статье описывается, как создать контактную форму в Drupal. Вы можете скопировать окончательный код с Github.

Функция drupal_get_form — генерация форм в Drupal

Вся магия создания форм в Drupal основана на функции drupal_get_form. Результат этой функции отображается в Drupal в табличном формате.

Она принимает в качестве аргумента form_id : уникальный идентификатор определения формы, и если выход функции имеет такое же имя, то функция вызывается и создается. Более подробную информацию о функции drupal_get_form смотрите здесь.

Создание основных форм в Drupal

Начните с создания небольшого модуля, который создает меню обратного вызова. Затем используйте функцию drupal_get_form в этом меню обратного вызова для создания формы. Для создания модуля необходимо создать дополнительный каталог sitesallmodulesdrupalform в папке, где установлен Drupal, и добавить два файла drupalform.info и drupalform.module со следующим кодом drupalform.info и drupalform.module со следующим кодом.

Используя приведенный выше код, модуль появится в списке доступных модулей и будет включен, как показано на изображении ниже.

ЧИТАТЬ ЕЩЁ:  9 лучших плагинов WordPress для проведения опросов в 2021 году

Создание базовой формы в Drupal

После этого вы можете использовать hook_menu для добавления меню обратного вызова и создания формы на этой странице. Код будет выглядеть следующим образом

В приведенном выше коде был реализован hook_menu для создания пункта меню, значение page_callback которого — drupal_get_form, а аргумент — form_id " drupalform_form1 ". Функция drupalform_form1 возвращает массив форм для создания.

Функция drupalform_form1 создает в блоке три текстовых поля для выбора имени ( name ), фамилии ( last name ), электронной почты ( email ) и страны. Укажите вариант страны в раскрывающемся блоке. Также добавляется кнопка 'submit', чтобы пользователь мог окончательно отправить форму.

Теперь вы должны иметь возможность перейти в меню /drupalform/form1 и увидеть следующую форму

Создание базовой формы в Drupal - 2

Валидация форм Drupal

В Drupal сложно использовать соглашения об именовании, чтобы указать, какие функции вызывают те или иные события. Вся система Drupal основана на соглашениях об именовании.

Аналогично, функции, вызываемые для проверки данных формы, должны следовать соглашению об именовании _validate и терять form_state как переменную.

Таким образом, в нашей форме функция имени будет выглядеть следующим образом

Значение, введенное пользователем, представлено в массиве $form_state['value'] и соответствует ID, указанному в форме.

Поэтому, если необходимо выполнить валидацию формы, то функция будет такой.

Приведенная выше функция проверяет, заполнены ли поля имени и фамилии и действителен ли указанный адрес электронной почты. Если эти условия не выполняются, используется функция Drupal form_set_error для определения ошибки в форме.

Пользователь увидит сообщение об ошибке, и форма не будет отправлена. Если форма отправлена с именем, оставляющим вакуум, на экран будет выведено следующее сообщение об ошибке.

Проверка формы Drupal

Отправьте форму Drupal.

Аналогично функции проверки, функция отправки основана на правиле именования, и имя функции должно быть _Submit. И снова ему передается переменная $ form_state. Таким образом, функция отправки определяется следующим образом

ЧИТАТЬ ЕЩЁ:  Web 2.0 для дизайнеров

Теперь, если все поля заполнены правильно, на экране появится следующее сообщение

Отправка форм Drupal

Поля можно использовать для настройки отдельных элементов в форме Drupal.

Если ваша форма большая и содержит много полей, может быть полезно разбить ее на небольшие разделы, чтобы она выглядела более упорядоченной для пользователя. Для этого вы можете создать группы полей, сформировав группы полей в Drupal.

Чтобы создать поле BasicDetails, содержащее вышеуказанные поля, необходимо сообщить DrupalForm_form1 следующим образом.

Это создаст многопольное соединение, как показано ниже.

Отправка форм Drupal - 2

Различные элементы форм, доступные в формах Drupal

Drupal поддерживает большое количество различных типов полей, которые можно использовать в формах. Пример формы обновлен, чтобы использовать некоторые из них и создать еще две комбинации полей, создавая больше адресов и дополнительных деталей.

Обновленный код приведен ниже:.

Вот как выглядят новые поля ввода

Различные элементы форм, которые могут быть использованы в формах Drupal

Заключение

Drupal помогает создавать и редактировать формы непосредственно в разделах. API Drupal делает это очень просто. Вы можете вносить дополнения или изменения в форму как в серию форм. Вы также можете проверять и отправлять различные функции.

Такой четкий подход обеспечивает чистоту и простоту сопровождения кода в разделах. Более того, при использовании API-форм Drupal нет необходимости обрабатывать HTML-детали формы. Весь HTML-код генерируется автоматически.

Идеально подходит при создании следующего списка форм, которые можно заполнить в разделе Drupal!

Оцените статью