mosaxiv / cakephp-invisible-recaptcha
cakephp-invisible-recaptcha plugin for CakePHP
Installs: 4 898
Dependents: 0
Suggesters: 0
Security: 0
Stars: 7
Watchers: 2
Forks: 3
Open Issues: 1
Type:cakephp-plugin
Requires
- cakephp/cakephp: ^3.4
Requires (Dev)
- cakephp/cakephp-codesniffer: ^3.0
- phpunit/phpunit: ^5.7|^6.0
This package is auto-updated.
Last update: 2025-04-15 08:10:50 UTC
README
Requirements
- CakePHP 3.4.0+
Installation
composer require mosaxiv/cakephp-invisible-recaptcha
obtain a invisible reCAPTCHA API key.
SetUp
Configure
With the following test keys, you will always get No CAPTCHA and all verification requests will pass.
Please do not use these keys for your production traffic.
Configure::write('recaptcha', [ 'sitekey' => '6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI', 'secretkey' => '6LeIxAcTAAAAAGG-vFI1TnRWxMZNFuojJ4WifJWe', ]);
loadComponent
$this->loadComponent('InvisibleReCaptcha.InvisibleReCaptcha', [ // options ]);
Some of the options available:
Option | Description | Default | Value |
---|---|---|---|
secretkey | Override secret API key | null | |
sitekey | Override site API key | null | |
hl | Optional. Forces the widget to render in a specific language. Auto-detects the user's language if unspecified. (See language codes) | null | |
badge | Optional. Reposition the reCAPTCHA badge.inline allows you to control the CSS. |
bottomright | bottomright bottomleft inline |
type | Optional. The type of CAPTCHA to serve. | image | audio image |
timeout | The number of seconds to wait for reCAPTCHA servers before give up. | 3 | integer |
noscript | Include <noscript> content |
true | boolean |
docs https://developers.google.com/recaptcha/docs/invisible#config
Used
Display recaptcha in your view
<?php echo $this->Form->create(); echo $this->Form->control('email'); echo $this->Form->submit(); echo $this->InvisibleReCaptcha->render(); echo $this->Form->end(); ?>
Verify in your controller
if ($this->InvisibleReCaptcha->verify()) { //do something }
use ServerRequest::clientIp to get the IP address.
See https://book.cakephp.org/3.0/en/controllers/request-response.html#trusting-proxy-headers