Сегодня мы поговорм о том, как разместить на своем сайте проверочный тест CAPTCHA от Google (ReCaptcha). Процедура это достаточно простая, тем более есть готовые наборы библиотек на разных языках, в том числе и на PHP…
Для начала нам нужно зарегистрироваться на сайте Google. (Сделать это можно тут: http://www.google.com/recaptcha).
Примечание: Вышла запись о том как как добавить ReCAPTCHA 2 на сайт
Вторым этапом мы должны получить два ключа для нашего сайта: открытый и закрытый. Сделать это можно перейдя по вкладке «MY ACCOUNT» и далее по большой красной кнопке «Add a New Site».
На открывшейся странице необходимо ввести адрес Вашего сайта, если Ваш сайт находится в зоне «.РФ«, то необходимо указать Punycode Вашего адреса (например: xn—-dtbhahfcg8aebgjccv2aeek.xn--p1ai). Узнать пуни(пани) код можно здесь: http://www.charset.org/punycode.php.
Указав адрес своего сайта мы нажимаем на кнопку «Create Key». После этого мы видим страницу с параметрами для нашего сайта. Нас интересует следующие два поля:
Public Key: <ВАШ КОД> Private Key: <ВАШ КОД>
Теперь для простоты скачаем библиотеку для PHP отсюда.
Для примера использования ReCaptcha создадим файл php со следующим содержимым:
require_once('recaptchalib.php'); $publickey = ""; //Ваш Паблик Ключ $privatekey = ""; //Ваш Приват Ключ $error = null; if ($_POST["recaptcha_response_field"]) { $resp = recaptcha_check_answer ($privatekey, $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]); if ($resp->is_valid) { echo "Вы ввели верный код."; } else { $error = $resp->error; } } echo recaptcha_get_html($publickey, $error);