8. Класс CAPTCHA
Добавлен класс для работы с CAPTCHA, возможности класса:
- Использование нескольких капч на странице;
- Подключение к любым модулям системы;
- Задание цвета шрифта и бекграунда для капчи;
- Задание длины и размеров капчи.
Пример использования:
PHP код:
<?
// Уникальный идентификатор необходим, для возможности использования несколько капч на странице
$uniqid = md5();
// Подключаем библиотеку
$this->captcha = handyCore::loadExtension('lib.captcha');
// цвет бекграунда, по-умолчанию задается случайным образом, можно задать ввиде массива (RGB)
$this->captcha->background_rand = array(255,255,255);
// цвет шрифта, по-умолчанию задается случайным образом, можно задать ввиде массива (RGB)
$this->captcha->foreground_rand = array (0,0,0);
// ширина, по-умолчанию 140px
$this->captcha->captcha_width = 200;
// высота, по-умолчанию 60px
$this->captcha->captcha_height = 70;
// длина строки (кол-во символов), по-умолчанию от 5 до 7 случайным образом.
$this->captcha->captcha_length = 7;
// Генерируем капчу
$this->captcha->genCaptcha($uniqid);
// проверочная строка, которая отображается на изображении
// генерируется при использования метода genCaptcha()
$string = $this->captcha->keystring;
// После геренации в значение строки проверки хранится в переменной сессии
if($_POST['captcha'][$uniqid] == $_SESSION['HANDY-CAPTCHA-OPT'][$uniqid]['STRING']) echo 'OK';
else echo 'WRONG';
?>
Отображение капчи:
PHP код:
<img src="/?HANDY-CAPTCHA{$uniqid}">
9. Модуль "Формы"
Добавлена возможность работы с библиотекой CAPTCHA.
Однако мы рекомендуем использовать CAPTCHA тогда, когда это действительно необходимо, т.к. по статистике она снижется количество откликов с форм.
На данный момент модуль "Формы" отсекает порядка 99% спама без применения капч и усложнения работы пользователя с формами.