Intereting Posts
PHP / ImageMagic Получить «тень» изображения Значение переменной GET PHP из идентификатора данных HTML PHP myAdmin – Изменить порядок полей (перемещение вверх или вниз) Простой HTML DOM Parser – отправлять переменные сообщения PHP HTTP POST не работает, когда данные cURL> 1024 Как сохранить входное значение файла после отправки формы с ошибками? Нельзя использовать скалярное значение как массив Что такое хороший брокер сообщений, который работает с PHP? писать utf-8 символов в файл с fputcsv в php PHP DateTime (): отображает длительность более 24 часов, но не как дни, если они больше 24 часов Как отображать сообщения WordPress в 3 столбца по горизонтали? Одна форма с двумя кнопками отправки и различными действиями для каждой кнопки Как создать монолитную (отображать отдельные элементы) из моей базы данных? PHP Добавьте 1-часовой выход к текущему времени / дате нужна помощь в оптимизации wordpress meta_query

странная ошибка reCaptcha в PHP

У меня возникла проблема с реализацией reCaptcha на моем веб-сайте.

Я последовал за учебником здесь: http://code.google.com/apis/recaptcha/docs/php.html и реализовал только базовую reCaptcha с сообщением об ошибке.

Ниже приведен какой-то пользовательский код, который я использую в файле, который отправляется форме:

if (!$resp->isValid) { $_SESSION['badLoginCount'] += 1; $_SESSION['incorrect-captcha'] = true; $_SESSION['incorrect-captcha-error'] = $resp->error; header ('Location: ../../signin.php'); exit; } 

Если пользователь вводит неверный reCaptcha, перенаправление страницы и ошибка отображаются как ожидалось. Однако, когда пользователь вводит правильную reCaptcha, isValid по-прежнему вычисляет FALSE и запускает эту ветвь, однако ошибка $ resp-> ничего не содержит, и это почти невозможно отладить.

Кто-нибудь сталкивался с этим раньше? Я ничего не могу найти в Интернете.

Быстрое и взломанное обходное решение будет проверять, является ли $resp->error пустой.

 if (!empty($resp->error)) { $_SESSION['badLoginCount'] += 1; $_SESSION['incorrect-captcha'] = true; $_SESSION['incorrect-captcha-error'] = $resp->error; header ('Location: ../../signin.php'); exit; }