Доброго времени суток, переделываю сайт с html на друпал. Ранее создавал все формы через webform, но есть готовая форма на html5 и никак не могу разобраться куда вставить обработчик и как его вообще создать. Перегуглил и переяндексил все что мог вплоть до 10-х страниц. Form Api изучать некогда. Нашел вот это: http://www.drupal.ru/node/40831 но тоже не пойму как это делать. Добрые друпаллеры помогите пожалуйста!
код самой формы прост:
Ваш телефон:
Например "8 978 321456"
Отправить
Комментарии
$form['phone'] = array(
'#type' => 'textfield',
'#title' => t('Your phone'),
'#description'=> t('Example 8 978 321456'),
'#size' => 17,
'#maxlength' => 15
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Send'),
);
}
myModule_form_submit($form, &$form_state) {
...
}
готовая форма на html5 вам не поможет, только если стили содрать. в конструкторе формы прописывате textfield поле или любое другое, см. пред. сообщение
а в сабмите всё остальное, что должно происходить. также есть hook_form_validate для валидации
аякс прицепляется через '#ajax' с указанием коллбэка и обертки, в которую вернется результат
делать всё это надо в отдельном модуле
посмотрите examples модуль, он вам поможет в понимании кода (внутри модуля отдельная директория по form api)
То есть как я понял просто взять и отправить форму созданную через form и input у меня не получится? как же тогда у него получилось? http://www.drupal.ru/node/40831
Вы не поняли. В drupal, если вы не хотите пользоваться готовым модулем WEBFORM, можно написать свою форму. Писать ее надо в своем модуле. Как делать модуль материалов очень много. Что и как можно писать в форму описано здесь . Там же в модуле описываете и обработчик формы, hook_validate и hook_submit. Выводить форму можно на страницу, в блок, модальное окно и тп. Но в браузере вы естественно будете видеть только hnml, то есть стандартные form, input и что вы там еще напишете.
Если хотите быстро разобраться с примерами https://www.drupal.org/project/examples
Спасибо за помощь буду разбираться все же...