ivanamat / cakephp-captcha
CakePHP 4.5.x - reCAPTCHA 插件
2.0
2024-04-04 15:07 UTC
Requires
- php: >=7.4
- cakephp/cakephp: 4.5.x
This package is auto-updated.
Last update: 2024-09-04 16:15:26 UTC
README
安装
Composer
您可以使用 composer 将此插件安装到您的 CakePHP 应用程序中。
安装 composer 包的推荐方式是
composer require ivanamat/cakephp-captcha
Git 子模块
git submodule add git@github.com:ivanamat/cakephp-captcha.git plugins/Captcha
git submodule init
git submodule update
入门指南
在 https://www.google.com/recaptcha 获取 reCAPTCHA 密钥
配置
在您的 config/bootstrap.php
文件中设置密钥。
Configure::write('Captcha.secret','MY_SECRET_KEY');
加载组件
在 initialize()
函数中加载组件
class MyController extends AppController { public function initialize() { parent::initialize(); $this->loadComponent('Captcha.Captcha'); } }
...或者在组件数组中加载。
class MyController extends AppController { public $components = [ 'Captcha' => [ 'className' => 'Captcha.Captcha' ] ]; }
易于使用
控制器
# MyController $ip = getenv('REMOTE_ADDR'); $gRecaptchaResponse = $this->request->data['g-recaptcha-response']; $captcha = $this->Captcha->check($ip,$gRecaptchaResponse); if($captcha->errorCodes == null) { // Success } else { // Fail! Maybe a bot? }
HTML
在 HTML 模板的 </head>
结束标签之前粘贴此代码段
<script src='https://www.google.com/recaptcha/api.js'></script>
在 <form>
的末尾粘贴此代码段,您希望 reCAPTCHA 小部件出现的位置。将 YOUR-SITEKEY
替换为您自己的网站密钥。
<div class="g-recaptcha" data-sitekey="YOUR-SITEKEY"></div>
关于 CakePHP 4.x - reCAPTCHA
CakePHP 4.x - Captcha 使用 reCAPTCHA 第三方库。
您可以从官方网站下载 reCAPTCHA:[https://github.com/google/recaptcha)
贡献者
Iván Amat 在 GitHub 和 www.ivanamat.es
BusaniPrepaid 在 GitHub