Можно отправить контактную форму без проверки Google recaptcha v2 - PullRequest
0 голосов
/ 08 апреля 2019

Я использовал контактную форму в php и добавил на нее Google recaptcha. Но я могу отправить форму без подтверждения повторной проверки. Как я могу сделать эту recaptcha по мере необходимости. Я уже попробовал некоторые решения, но ни одно из них не помогло мне. Я ценю ваши ответы, спасибо

<form name="contact" method="post" action="" id="fsrep-contact-form">
  <table cellspacing="0" cellpadding="1" border="0">
    <tr id="fname">
      <td>First Name <span>*</span></td>
      <td><input type="text" name="fname" required></td>
    </tr>
    <tr id="lname">
      <td>Last Name</td>
      <td><input type="text" name="lname"></td>
    </tr>
    <tr id="emailid">
      <td>Email <span>*</span></td>
      <td><input type="email" name="email" id="mail" required></td>
    </tr>
    <tr id="phone-no">
      <td>Cell Phone <span>*</span></td>
      <td><input type="number" name="phone" required></td>
    </tr>
    <tr>
      <td>Please give us any other details you would like, that would help us to help you find your next home</td>
      <td><textarea name="message"></textarea></td>
    </tr>
    <tr>
      <td>
        <div class="g-recaptcha" id="rcaptcha" name="googlecaptcha" required data-sitekey="6LffZpsUAAAAAEC_KyN4KauhSSmKdRf9SVR5aVJD" data-callback="correctCaptcha"></div>
      </td>
    </tr>
    <tr>
      <td><input type="submit" name="submit" value="SUBMIT INQUIRY" id="submit"></td>
    </tr>
  </table>
</form>

1 Ответ

0 голосов
/ 08 апреля 2019

Я попробовал этот, и он работает для меня:

У вас есть атрибут data-callback

<div class="g-recaptcha" id="rcaptcha" name="googlecaptcha" required data-sitekey="YOUR KEY" **data-callback="correctCaptcha"**></div>

просто создайте функцию с именем correctCaptcha

var recaptchachecked=false; 
function correctCaptcha() {
    recaptchachecked = true;
}

Затем с вашей формой вы удерживаете ее, пока не подтвердите, если переменная recaptchachecked - true, затем продолжите.

<form method="post" onsubmit="return isreCaptchaChecked(event)">
..
..
</form>

function isreCaptchaChecked()
{
  e.preventDefault();
  return recaptchachecked;
}

Надеюсь, это вам поможет.

...