cgsmith/zf1-recaptcha-2

一个用于帮助使用 ZF1 与 Google reCAPTCHA 版本 2 的快速包

1.0.2 2016-04-26 14:00 UTC

This package is auto-updated.

Last update: 2024-09-08 07:19:42 UTC


README

ZF1 默认使用 Google reCAPTCHA 版本 1。现在版本 2 已可用,您可能希望为您的 Zend Framework 安装使用最新的元素。

安装

Composer 安装

"require": {
    "cgsmith/zf1-recaptcha-2": "~1.0"
}

用法

安装最新版本(1.0.1),并使用以下信息设置插件和表单抽象:

  • 在您的 application.ini 或您想要的位置
recaptcha.sitekey = "YOUR SITE KEY GIVEN BY GOOGLE"
recaptcha.secretkey = "YOUR SECRET KEY GIVEN BY GOOGLE"
  • 在您的引导程序中
public function _initView()
{
    $view = new Zend_View();

    $view->addHelperPath(
        APPLICATION_PATH . '/../vendor/cgsmith/zf1-recaptcha-2/src/Cgsmith/View/Helper',
        'Cgsmith\\View\\Helper\\'
    );

    Zend_Controller_Action_HelperBroker::addHelper(new Zend_Controller_Action_Helper_ViewRenderer($view));

    return $view;
}

public function _initRecaptcha()
{
    $config = \Zend_Registry::get('application');
    $params = $config->recaptcha->toArray();

    $params['messageTemplates'] = [
        \Cgsmith\Validate\Recaptcha::INVALID_CAPTCHA => 'The captcha was invalid', // set custom/translated message
        \Cgsmith\Validate\Recaptcha::CAPTCHA_EMPTY => 'The captcha must be completed'
    ];

    \Zend_Registry::set('recaptcha', $params);
}
  • 以下是在您的表单中设置的内容。
<?php

// create your element
$this->addElement(new \Cgsmith\Form\Element\Recaptcha());
  • 在您的控制器中,在 "验证请求数据" 后
if($form->isValid($_POST)) {
	$values = $form->getValues();
	unset($values['g-recaptcha-response']);
	// Your business logic must be here
}

关于

要求

  • ZF1 reCAPTCHA2 支持 PHP 5.5 或更高版本。

提交错误和功能请求

错误和功能请求在 GitHub 上跟踪

作者

Chris Smith - chris@cgsmith.net - http://twitter.com/cgsmith105

许可协议

ZF1 reCAPTCHA2 在 MIT 许可证下发布 - 有关详细信息,请参阅 LICENSE 文件