anadikt
Гуру форума
- Регистрация
- 28 Янв 2010
- Сообщения
- 435
- Реакции
- 86
- Автор темы
- #1
1. Заходим на сайт Для просмотра ссылки Войди или Зарегистрируйся
Получаем ключи, которые потом будет записывать
2. В любую форму добавляем:
3. Добавляем в файлы .tpl:
4. И в любом View где надо проверять:
Ну и вызов google_captcha() для проверки _PUBLIC_KEY__ и __SECRET_KEY__ вводите тот что вам гугл выдал
Получаем ключи, которые потом будет записывать
2. В любую форму добавляем:
Код:
<input type="hidden" name="recaptcha_response">
3. Добавляем в файлы .tpl:
Код:
{literal}
<style>.grecaptcha-badge {visibility: hidden;}</style>
<script src="https://www.google.com/recaptcha/api.js?render=__PUBLIC_KEY__"></script>
<script>
grecaptcha.ready(function() {
grecaptcha.execute('__PUBLIC_KEY__', {action: 'submit'}).then(function(token) {
grecaptcha.value = token;
//объект формы
$("form.ajax_form").find("input[name='recaptcha_response']").val(token);
});
});
</script>
{/literal}
4. И в любом View где надо проверять:
Код:
function google_captcha()
{
if(isset($_POST['recaptcha_response']))
{
$recaptcha_url = 'https://www.google.com/recaptcha/api/siteverify';
$recaptcha_secret = "__SECRET_KEY__";
$recaptcha_response = $_POST['recaptcha_response'];
$recaptcha = file_get_contents($recaptcha_url . '?secret=' . $recaptcha_secret . '&response=' . $recaptcha_response);
$recaptcha = json_decode($recaptcha);
//проверка на очки
if(isset($recaptcha->score) && $recaptcha->score >= 0.5)
return true;
}
return false;
}
Ну и вызов google_captcha() для проверки _PUBLIC_KEY__ и __SECRET_KEY__ вводите тот что вам гугл выдал