aldoanizio / makorecaptcha
此包最新版本(dev-master)没有可用的许可证信息。
Mako Framework 4.0 的 Google reCaptcha 包
dev-master
2014-07-29 16:44 UTC
Requires
This package is auto-updated.
Last update: 2024-08-29 03:52:50 UTC
README
Mako Framework 4.0 的 Google reCaptcha 包。
安装
使用 composer 安装。只需将包添加到您的项目中。
composer require aldoanizio/makorecaptcha:*
因此现在您可以使用单个命令更新项目并安装包。
composer update
注册服务
安装后,您需要在 app/config/application.php
文件中注册一个新的服务。
/** * Services to register in the dependecy injection container. */ 'services' => [ .... 'makorecaptcha\service\ReCaptchaService', ],
配置
配置此包有两种方法。第一种是直接在包文件夹中编辑配置文件:app/packages/makorecaptcha/config/config.php
并输入必要的信息。
如果您喜欢,可以将包的配置文件 app/packages/makorecaptcha/config/config.php
复制到 app/config/packages/makorecaptcha
文件夹中,应用程序将加载该文件而不是包中位于的文件。这可以在更新包的同时保留您的自定义设置。
分配变量模板
在模板视图中使用 captcha 之前,需要将 makoReCaptcha 实例分配给新变量。
$this->view->assign('makoReCaptcha', $this->makoReCaptcha);
显示验证码表单
要使 reCAPTCHA 小部件在页面加载时出现,只需在您的
元素中调用html
方法。
<form method="post" action="/my/route"> <?php echo $makoReCaptcha->html(); ?> <input type="submit" value"Check Captcha" /> </form>
验证提交数据
要验证提交数据,您需要使用解析 3 个参数的 check
方法。
第一个参数是请求的 IP 地址。
第二个参数是自动生成的 recaptcha_challenge_field
字段。
第三个参数是包含输入数据的 recaptcha_response_field
。
$captcha = $this->makoReCaptcha->check($this->request->server('REMOTE_ADDR'), $this->request->post('recaptcha_challenge_field'), $this->request->post('recaptcha_response_field'));
现在您需要使用 isValid
方法检查输入数据是否有效。
if($captcha->isValid()) { // Lets Go!! } else { // Wow, hang on dude!! }
您还可以使用 isInvalid
方法。
if($captcha->isInvalid()) { // Wow, hang on dude!! } else { // Lets Go!! }