У вас есть запрограммированная форма в друпал, и вы хотите добавить в неё антиспам поле из модуля CAPTCHA. Смотрим как это сделать.
Для начала модуль СAPTCHA надо скачать и установить (активировать на странице доступных модулей сайта — /admin/build/modules). Потом в код вашей пользовательской формы нужно добавить код поля CAPTCHA. Нужная функция есть прямо в модуле CAPTCHA — captcha_elements(). Она возвращает элемент формы с именем — ‘captcha’. Вот как это может выглядеть на примере функции, возвращающей набор полей некоторой пользовательской формы.
Обычное положение проверочного кода — перед кнопкой отправки данных.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
function mymodule_callback_form() { //вставка поля кепча $form = captcha_elements(); //зададим нужный тип проверочного поля $form['captcha']['#captcha_type'] = 'image_captcha/Image'; //положение поля кепча - в самом низу формы $form['captcha']['#weight'] = 100; //тут ещё какие то поля формы $form['xxx'] = array(...); ... //а последним обычно идет - submit, отправка данных $form['submit'] = array( '#type' => 'submit', '#value' => 'Отправить', //вес ещё больше чем у кепча - потому она будет завершать форму '#weight' => 101, ); //форма готова return $form; } |
Для пущей красоты можно добавить тест на то, что модуль кепча установлен. Как говориться, добавить соль, сахар по вкусу.
Написать комментарий
Данная запись опубликована в 19.02.2012 17:27 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Июль 11, 2016 г.
Модуль транслитерации помогает нам с переименованием загружаемых файлов. Но мне лично не все нравится в его работе. Например, пробелы он заменяет символом нижнего подчеркивания, а хотелось бы получить "дефис".
Хоть у модуля и нет тонких настроек, ...
Читать
Февраль 4, 2021 г.
Если нужно использовать db_select вместо db_query, но не ясно как правильно составить SQL условие с оператором LIKE, читайте далее.
Здесь вам пригодится хелпер функция db_like, которую нужно применить к аргументу сравнения.
Небольшой пример ...
Читать