AddEventHandler('main', 'OnBeforeUserRegister', 'OnBeforeUserRegisterHandler');
function OnBeforeUserRegisterHandler(&$arFields){
global $APPLICATION;
if ( isset($_POST['recaptcha_response']) ){
$recaptcha_key = 'секретный ключ';
$recaptcha_url = 'https://www.google.com/recaptcha/api/siteverify';
$recaptcha_params = [
'secret' => $recaptcha_key,
'response' => $_POST['recaptcha_response'],
'remoteip' => $_SERVER['REMOTE_ADDR'],
];
$ch = curl_init($recaptcha_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $recaptcha_params);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
$response = json_decode($response);
if ( $response->success === false ){
$APPLICATION->ThrowException('Ошибка прохождения ReCaptcha.');
return false;
}
if ( $response->score <= 0.5 ){
$APPLICATION->ThrowException('ReCaptcha не пройдена.');
return false;
}
} else {
$APPLICATION->ThrowException('ReCaptcha отсутствует.');
return false;
}
}
а куда попадет это сообщение
$arr = unserialize($result["images"]);
foreach($arr as $item){
if ( array_key_exists("tag", $item) && $item["tag"] == "plan" ){
var_dump( $item["url"] );
}
}