программирование

Многие программисты (включая меня) боятся «картиночных» капч. Ну это тех, где нужно вводить символы с картинки. Боятся не в смысле, что при виде залезают под кровать и начинают плакать, а в том смысле, что устанавливать такие капчи как правило – неприятное занятие.

Оно неприятно только до тех пор, пока программист не решает «разобраться уже наконец» и «мужик я или не мужик?!» и лезет в гугл за информацией, чтобы составить себе один единственный модуль с капчей, понять его как свои 5 PCI портов и полюбить светлой любовью на веки вечные.

Короче. Я к тому, что мне нужно было сегодня установить картиночную капчу, а стандартного модуля под рукой у меня не было. Гугл, как всегда, на высоте.

Что нужно делать, чтобы в несколько этапов поставить капчу на страницу?

1. Включаем сессии в index.php с помощью start_session(); (можно и непосредственно перед формой, но в самом начале при инициализации движка как-то приятнее)

2. Добавляем файл captcha.php (генерирует капчу) и вот этот файл (шрифт) в корень сайта.

3. В форму, где нужно показать капчу добавляем поля:

<input type=text name=’random_string’> – это поле, куда надо будет вводить капчу
<img src=’/captcha.php’ border=1> – это изображение кода (картинка)

4. В файле, где у нас происходит обработка запроса из формы, добавляем вот такой код:

session_start();
$captcha_check = 0;
if ($_POST[‘random_string’] == $_SESSION[‘random_string’]) {
$captcha_check = 1;
unset($_SESSION[‘random_string’]);
}

Теперь, если капча введена верно, мы получим в переменной $captcha_check значение 1, в противном случае ноль (или пустоту). Ну а дальше – делаем уже то, что хотим.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *