@imandrey

Recapcha — как прикрутить?

Дайте кто то пример рабочей формы с отправкой каких то полей на почту с капчей или помогите впихнуть ее сюда

Уже задолбался рыть
нифига не получается
пользовательскую часть вставил. ок
но со стороны сервера, куда что пихать
ничего не получается, куда не тулил
вообще нифига не пойму

Помогите

можно взять обработчик напр. этот

<?php

<?php
  //Если форма отправлена
  if(isset($_POST['submit'])) {
 //Проверка Поля ИМЯ
  if(trim($_POST['contactname']) == '') {
  $hasError = true;
  } else {
  $name = trim($_POST['contactname']);
  }
 //Проверка поля ТЕМА
  if(trim($_POST['subject']) == '') {
  $hasError = true;
  } else {
  $subject = trim($_POST['subject']);
  }
 //Проверка правильности ввода EMAIL
  if(trim($_POST['email']) == '')  {
  $hasError = true;
  } else if (!eregi("^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,4}$", trim($_POST['email']))) {
  $hasError = true;
  } else {
  $email = trim($_POST['email']);
  }
 //Проверка наличия ТЕКСТА сообщения
  if(trim($_POST['message']) == '') {
  $hasError = true;
  } else {
  if(function_exists('stripslashes')) {
  $comments = stripslashes(trim($_POST['message']));
  } else {
  $comments = trim($_POST['message']);
  }
  }
 //Если ошибок нет, отправить email
  if(!isset($hasError)) {
  $emailTo = 'name@yourdomain.com'; //Сюда введите Ваш email
  $body = "Name: $name \n\nEmail: $email \n\nSubject: $subject \n\nComments:\n $comments";
  $headers = 'From: My Site <'.$emailTo.'>' . "\r\n" . 'Reply-To: ' . $email;
 mail($emailTo, $subject, $body, $headers);
  $emailSent = true;
  }
  }
  ?>
  • Вопрос задан
  • 124 просмотра
Пригласить эксперта
Ответы на вопрос 1
@YashaWeb
Вставляешь это в свою форму
<div class="g-recaptcha" data-sitekey="SITEKEY" id="captcha"></div>

Это PHP проверка на стороне сервера
$url1 = 'https://www.google.com/recaptcha/api/siteverify?secret=SECRET&response='.(array_key_exists('g-recaptcha-response', $data) ? $data["g-recaptcha-response"] : '').'&remoteip='.$_SERVER['REMOTE_ADDR'];
            $resp1 = json_decode(file_get_contents($url1), true);
            if ($resp1['success'] != true) {
// Тут код, который срабатывает в случае ошибки
// Пример: $errors[] = 'Не правильно решена каптча';
            }


SITEKEY и SECRET бери в своем аккаунте recapthca5ed7d572d320f184515681.png
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы