Не работает каптча от Яндекса
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Не работает каптча от Яндекса
Проверьте ключи. Скорей всего не верный secret_key
- mikhalkin
- Инвестор

- Сообщения: 193
- Зарегистрирован: 04 июн 2018, 15:07
- Имя: Александр
- Откуда: Москва
- Организация: Нионейт
- Контактная информация:
Re: Не работает каптча от Яндекса
Проверил, ключи верные.
Каптчу прохожу, но все так же всплывает: Пожалуйста, подтвердите, что вы не робот!
Каптчу прохожу, но все так же всплывает: Пожалуйста, подтвердите, что вы не робот!
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Не работает каптча от Яндекса
При проверке используется "Ключ сервера", проверьте его. Если он не верный, то проверка проходить не будет.
- mikhalkin
- Инвестор

- Сообщения: 193
- Зарегистрирован: 04 июн 2018, 15:07
- Имя: Александр
- Откуда: Москва
- Организация: Нионейт
- Контактная информация:
Re: Не работает каптча от Яндекса
Проверил, ключ верный.
Так же и публичный ключ верный.
Все равно осталась проблема
Так же и публичный ключ верный.
Все равно осталась проблема
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Не работает каптча от Яндекса
В файле includes\classes\app_recaptcha.php
найдите функцию
И проверьте что выводит $server_output
Обратите внимание что в качестве аргументов передаем $_SERVER['REMOTE_ADDR'], возможно ваш сервер не передает. Проверьте так же $args.
найдите функцию
Код: Выделить всё
static function verify_yandex()
{
$ch = curl_init("https://smartcaptcha.yandexcloud.net/validate");
$args = [
"secret" => CFG_YANDEX_SMARTCAPTCHA_SECRET_KEY,
"token" => $_POST['smart-token']??'',
"ip" => $_SERVER['REMOTE_ADDR'],
];
curl_setopt($ch, CURLOPT_TIMEOUT, 1);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($args));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$server_output = curl_exec($ch);
$resp = json_decode($server_output);
return $resp->status === "ok";
}
Обратите внимание что в качестве аргументов передаем $_SERVER['REMOTE_ADDR'], возможно ваш сервер не передает. Проверьте так же $args.
- mikhalkin
- Инвестор

- Сообщения: 193
- Зарегистрирован: 04 июн 2018, 15:07
- Имя: Александр
- Откуда: Москва
- Организация: Нионейт
- Контактная информация:
Re: Не работает каптча от Яндекса
Отдается домен. Пока не понимаю в чем проблема
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Не работает каптча от Яндекса
Похоже что где то curl запрос блокируется.
- mikhalkin
- Инвестор

- Сообщения: 193
- Зарегистрирован: 04 июн 2018, 15:07
- Имя: Александр
- Откуда: Москва
- Организация: Нионейт
- Контактная информация:
Re: Не работает каптча от Яндекса
Ругается в PHP логах на это:
[10-Jan-2026 17:59:26 Europe/Moscow] PHP Warning: Attempt to read property "status" on null in \includes\classes\app_recaptcha.php on line 153
[10-Jan-2026 17:59:26 Europe/Moscow] PHP Warning: Attempt to read property "status" on null in \includes\classes\app_recaptcha.php on line 153
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Не работает каптча от Яндекса
Ну потому что его нет.
Что показывает var_dump($server_output); ?
Что показывает var_dump($server_output); ?