Модуль "Скрытая капча". Drupal.

Модуль "Скрытая капча". Суть данного модуля в том, что поле для ввода капчи является скрытым и заполняется java-скриптом автоматически. О наличии капчи в форме, пользователь вообще не догадывается. Каждый хоть раз задумывался, о java-скриптовой капчи против спамботов. Стандартная капча отображается, для пользователей без java-скрипта. Как следствие - довольные юзера. Не надо заполнять капчу. От нацеленной спам-атаки модуль не спасет.

Кому интересно как он работает

С небольшой модификацией модуль основан на стандартной мат. капче.
Часть модуля:

  1. ///....
  2. $result[’form’][’captcha_response’] = array(
  3. ’#type’ => ’textfield’,
  4. ’#title’ => t(’Math Question’),
  5. ’#description’ => t(’Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.’),
  6. ’#field_prefix’ => t(’@x + @y = ’, array(’@x’ => $x, ’@y’ => $y)),
  7. ’#size’ => 4,
  8. ’#maxlength’ => 2,
  9. ’#required’ => TRUE,
  10. ’#suffix’ => drupal_add_js("$(’.captcha’).hide(); $(’#edit-captcha-response’).attr(’value’,$answer);",’inline’,’footer’) ,
  11. //....

Этот суффикс вклинивает джаваскрипт, который и прячет форму, а далее заполняет поле.

  1. ’#suffix’ => drupal_add_js("$(’.captcha’).hide(); $(’#edit-captcha-response’).attr(’value’,$answer);",’inline’,’footer’) ,

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

Скачать модуль.

Отправить новый комментарий

Содержимое этого поля хранится скрыто и не будет показываться публично.
  • Допустимые HTML-теги
  • Автоматический перевод строки.
  • You may link to webpages through the weblinks registry
  • Potentially problem-causing HTML tags are filtered.
  • Адреса страниц и электронной почты автоматически преобразовываются в ссылки.

Дополнительная информация о настройках форматирования

КАПЧА
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
9 + 2 =
Решите эту простую математическую задачу и введите результат. То есть для 1+3, введите 4.