Как создать простую капчу на основе вопросов/ответов
Далее описан процесс создани капчи на основе заполнения простых смысловых вопросов, а не на распознавании сложных графических образов.
Это способ менее защищен чем Google Recaptcha, но зато он не зависит от внешнего сервиса (если он будет недоступен, то форма просто не будет работать).
Через ИИ создаем 500-1000 пар простых вопросов/ответов в формате CSV, на которые может ответить любой человек.
Получится что-то вроде такого списка
Сколько будет 5 + 6?;11
Сколько будет 12 - 5?;7
Сколько дней в неделе?;7
Сколько месяцев в году?;12
Сколько часов в сутках?;24
Сколько минут в часе?;60
Сколько секунд в минуте?;60
Загружаем этот список в таблицу БД (например, as_simpleCaptcha).
В форме выводим поле со случайным вопросом и даем пользователю заполнить ответ по нему.
Если пользователь вводит ответ по таблице (существует такая запись в таблцице с указанным вопросом и ответом), то даем пользователю выполнить операцию.
Примечание:
- Вопрос (текст или id вопроса) надо таже передать в SaveItem в hidden поле, чтобы можно было найти его при выполнении проверки по базе.
- Важно проверить вопросы, что там нет неочевидных ответов (иначе может быть проблема с прохождением капчи у пользователей).
- Ответ надо сравнивать с оригиналом без учета регистра с отсечением пробелов в начале и конце строки.
Страница-источник на сайте falconspace.ru
-
Начало работы
-
Основа Falcon Space
-
Руководства
-
Возможности
-
Коммуникация пользователей
-
Таблицы
-
Формы
-
Поля формы
-
Лендинги
-
Дизайн, стилизация, юзабилити
-
Интеграции
-
Универсальный API
-
Каталоги
-
Навигация
-
Документы
-
Дополнительные компоненты
-
Продвижение, SEO
-
Системные моменты
Отслеживание изменений хранимых процедур и страниц (logChanges) Логирование изменений объектов на примере хранимых процедур Работа с редактором кода в личном кабинете разработчика Логирование событий в приложении (trace) Действия в браузере actions JSON Как быстро перенести решение (таблицы, формы, страницы) на другую базу? Настройка диалоговых окон и alert окошек Мелкие удобства для разработчика в личном кабинете Как отследить и ограничить большое количество однородных запросов на сайте Изменение процедуры поиска, процедуры общих элементов Layout, процедуры периодического запуска Как изменить длительность показа сообщений Форма обратной связи по ошибкам, предложениям suggestion Как разграничивать права на уровне бизнес-логики хранимых процедур Безопасная обработка данных и проверка доступа в хранимых процедурах Использование типовой разметки в виде сниппетов для решения различных задач Как логировать клики на определенных элементах в системе Обработка старых браузеров (сообщение об устаревшем браузере) Безопасность. Как скрыть некоторые заголовки (http headers) в запросах Отображение сообщения об offline (Нет сети) Рабочее место разработчика через терминал Как обойти проблему с DNS при атаке на DNS сервера (работа с сайтом через IP сервера без домена) Обновляемые метки времени в сообщениях на сайте Подсказка по интерфейсам хранимых процедур компонентов Защита от CSRF атак через дополнительный токен в формах Дополнительные параметры в @parameters (во многих хранимых процедурах) Как логировать события в Falcon в другую базу (чтобы ограничить рост основной базы данных) Сообщение об использовании куки (Cookies) Как искать код некоего компонента (таблицы, формы и т.д.) на странице Как сделать так, чтобы почта отправлялась асинхронно без задержек Работа со сниппетами кода Универсальная кнопка действия as_submit Режим показа таблицы/формы в alert окне Реализация системы анализа IP посетителей Метки локализации в as.resources.js Вывод markdown разметки в виде HTML Как создать простую капчу на основе вопросов/ответов
-
Системное администрирование
-
HOWTO
-
Загрузка файлов, картинок
-
HOWTO SQL
-
HOWTO JS
-
HOWTO Верстка
-
Решение проблем
-
Советы по реализации