Наряду с основными инструментами защиты форм Chronoforms и предотвращения спама, такими как Captcha, Honeypot, Security Question, NoCaptcha и ReCaptcha от Google, могут использоваться также дополнительные инструменты. Они не требуют размещения визуальных элементов на форме и не требуют каких-либо дополнительных действий от пользователей в ходе заполнения ее полей.

Одним из них является инструмент «Submit Limit». Он представляет собой функцию-обработчик события submit формы и имеет собственное событие On fail.

Эта функция служит для предотвращения многократной отправки сообщений одним и тем же пользователем в течении установленного интервала времени.

Для того, чтобы добавить этот обработчик в код формы, необходимо перейти на вкладку «Установка» (Setup) редактора формы, затем в наборе элементов группы «Security» (меню элементов слева) выбрать элемент «Submit Limit». Расположить его нужно в теле кода обработки события submit.

Элемент Submit Limit для защиты форм от спама в Chronoforms 5. Размещение на форме

Рис. 1

Местоположение «Submit Limit» относительно других обработчиков, обеспечивающих защиту формы и предотвращение спама, значения не имеет. Главное — чтобы элемент был расположен выше тех функций, которые отвечают за отправку почты и вывод сообщений и, по логике, должны срабатывать только тогда, когда все ограничения и правила заполнения формы на сайте соблюдены.

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

Элемент Submit Limit для защиты форм от спама в Chronoforms 5. Настройка

Рис. 2

Настроек у элемента немного:

  1. «Ограничение по времени» (Time limit) — интервал между отправками сообщений с формой в секундах. Указывается в виде целого числа.
  2. «Сообщение об ошибке» (Error message) — текст системного сообщения об ошибке, которое будет отображено, если пользователь сайта превысит лимит отправок формы.

Функция инструмента «Submit Limit» имеет собственное событие On fail, которое наступает при превышении лимита отправок. Для того, чтобы предотвратить отправку формы при превышении установленного интервала времени, необходимо добавить в область этого события элемент «Event loop» (см. рис. 1) из группы «Basic» (меню набора элементов слева).

Хостинг SpaceWeb