[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Настройка ReCAPTCHA setting v2
r136a8
Добрый день нужна помощь с настройкой reCaptcha v2:

У меня есть форма http://sergiykravchuk.com/contacts.html с google reCaptcha v2 но в моем коде когда человек не ставит галочку на иконке "I'm not a robot" recaptha code отправляет человека на пустую страницу с словами "Please check the the captcha form."
Мне же нужно чтоб человек оставался на этой же странице с предупреждением о не заполнении каптчи и набранным сообщением в форме.
Вот пример с самого сайта Google
https://www.google.com/recaptcha/api2/demo

Вот мой php обработчик:
<?php
$email;$comment;$captcha;
if(isset($_POST['email'])){
$email=$_POST['email'];
}if(isset($_POST['comment'])){
$email=$_POST['comment'];
}if(isset($_POST['g-recaptcha-response'])){
$captcha=$_POST['g-recaptcha-response'];
}
if(!$captcha){
echo '<h2>Please check the the captcha form.</h2>';
exit;
}
$secretKey = "********************";
$ip = $_SERVER['REMOTE_ADDR'];
$response=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=".$secretKey."&response=".$captcha."&remoteip=".$ip);
$responseKeys = json_decode($response,true);
if(intval($responseKeys["success"]) !== 1) {
echo '<h2>You are spammer ! Get the @$%K out</h2>';
} else {
echo '<h2>Thanks for posting comment.</h2>';
}


Сама форма:
<form class="contact_form" action="mail.php" method="post" name="contact_form">
<ul>
<li>
<input
name="name" type="text" placeholder="Name" required />
<input
name="e_mail" type="text" placeholder="Phone" required />
</li>
<li>
<textarea
name="text" cols="40" rows="6" placeholder= "Text..." required ></textarea>
</li>
<li>
<div
class="g-recaptcha" data-sitekey="**********"></div>
</li>
<li>
<button
class="submit" type="submit">Send</button>
</li>
</ul>
</form>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.