dungang/yii2-geetest

YII2 极验证码

0.0.1 2018-06-08 02:31 UTC

This package is not auto-updated.

Last update: 2024-09-23 06:28:13 UTC


README

yii2-geetest 是基于YII2框架对极验证码的封装。要使用此验证码需要申请appkey,具体请查阅极验证码的官网文档。

http://www.geetest.com/install/sections/idx-server-sdk.html#php

验证码效果图

使用方法

下载验证码包


composer require dungang/yii2-geetest

编辑项目的配置文件,比如 config/web.php 及 config/params.php

web.php 添加如下代码

    'modules'=>[
        'geetest'=>['class'=>'dungang\geetest\Module']
    ],
    

params.php 添加如下代码


    'geetest'=>[
        'userId'=>'test',
        'appPcId'=>'b46d1900d0a894591916ea94ea91bd2c',
        'appPcKey'=>'36fc3fe98530eea08dfc6ce76e3d24c4',
        'appMobileId'=>'7c25da6fe21944cfe507d2f9876775a9',
        'appMobileKey'=>'f5883f4ee3bd4fa8caec67941de1b903',
    ],
    

编辑表单模型文件,比如 LoginForm.php

配置验证规则的组建

    /**
     * @return array the validation rules.
     */
    public function rules()
    {
        return [
            // userName and password are both required
            [['userName', 'password'], 'required'],
            // verifyCode needs to be entered correctly
            ['verifyCode',\dungang\geetest\validators\CaptchaValidator::className()],
            // rememberMe must be a boolean value
            ['rememberMe', 'boolean'],
            // password is validated by validatePassword()
            ['password', 'validatePassword'],
        ];
    }
    

编辑视图文件,比如 login.php

需要与表单的提交按钮绑定


            <?= $form->field($model,'verifyCode')->label(false)
                ->widget(\dungang\geetest\widgets\Captcha::className(),[
                    'clientOptions'=>[
                        'submitButton'=>'#submit',
                        'showType'=>'float'
                    ],

                ])?>
            <?= $form->field($model, 'rememberMe')->checkbox() ?>
            <div class="form-group">
                <?= Html::submitButton(Yii::t('app', 'Login'), ['id'=>'submit','class' => 'btn btn-success btn-block', 'name' => 'login-button']) ?>
            </div>
            

widget 参数配置

[
    'platform'=>'pc',  //默认是pc ,还可以设置为mobile 移动端
    'captchaId'=>'geetest' //极验证码的id 
    'clientOptions'=>[
        'submitButton'=>'#submit', //绑定表单的提交按钮
        'showType'=>'float' //验证码的展现形式,之支持pc端,可选值:embed,float,popup
    ],

]

依赖

"gee-team/gt-php-sdk":"v3.2.0"

协议 MIT

MIT 许可证 (MIT)

版权 (c) 2017 dungang

特此授予任何获得本软件及其相关文档副本(以下简称“软件”)的人士免费使用权,不受任何限制,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本,并允许获得软件副本的人士进行上述行为,前提是遵守以下条件:

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

软件按“现状”提供,不提供任何形式的明示或暗示保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论这些责任是基于合同、侵权或其他方式,是否因软件或软件的使用或其他交易而产生。