Jump to content

ReCaptcha


gio1961

Recommended Posts

Hi guys, did someone re-use how to intervene on the ReCaptcha code of the old phpvms Version 2.1.936 version?  (page contact, registration) if yes, how? thanks for a possible answer.if yes, how? thanks for a possible answer

 

00.jpg

 

 

 

Edited by gio1961
Link to comment
Share on other sites

15 hours ago, youngbuckscrew said:

Okay this is one way of upgrading to v2 of recaptcha.

Go here https://github.com/google/recaptcha and scroll down to Direct Download (assuming you don't use composer) and download the package. Once downloaded insert it into:  core/lib/recaptcha-master

Once you have done this go to core/modules/registration/registration.php


# Replace or comment out
require_once CORE_LIB_PATH.'/recaptcha/recaptchalib.php';

# With
require_once CORE_LIB_PATH.'/recaptcha-master/src/autoload.php';

In that same file, scroll down to VerifyData


# Replace all code relating to captcha check with

  // start the error array as false, we dont have any errors yet.
  $error = false;

  // set the configurations for the service to work.
  $secret = Config::Get('RECAPTCHA_PRIVATE_KEY');
  $remoteIp = $_SERVER["REMOTE_ADDR"];
  $gRecaptchaResponse = $_POST['g-recaptcha-response'];
  $recaptcha = new \ReCaptcha\ReCaptcha($secret); 

  // Call the google service and verify the answer provided.
  $resp = $recaptcha->verify($gRecaptchaResponse, $remoteIp);

  // If Response was a success
  if ($resp->isSuccess())
  {
      // No errors; continue
      $this->set('captcha_error', '');
  } 
  else 
  {
      // Set error as true and show error on front-end
      $error = true;
      $this->set('captcha_error', true);
  }

And finally on your registration_mainform.tpl 


<div class="g-recaptcha" data-sitekey="<?php echo Config::Get('RECAPTCHA_PUBLIC_KEY'); ?>"></div>
<script type="text/javascript"
        src="https://www.google.com/recaptcha/api.js?hl=en">
</script>

<!-- Recaptcha V2 -->
<?php if($captcha_error == true)
    echo '<p class="error">Please verify you are human!</p>';
?>

you can make a function for that like v1 but that's up to you. Let me know if this helps you! 

Resolved, thanks. Best regards

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...