沃通/captcha

Laravel 5 验证码包

安装: 14

依赖: 0

建议: 0

安全: 0

星标: 2

关注者: 1

分支: 0

开放问题: 0

类型:package

1.0.0 2015-08-07 08:58 UTC

This package is not auto-updated.

Last update: 2024-09-18 10:12:05 UTC


README

https://github.com/mewebstudio/captcha克隆

为单表单定制一个验证码。

此版本使用会话来存储验证码值,因此如果在一页上使用多个验证码可能会出现问题,因为多个会话请求会同时覆盖会话。

下一版本将提供将验证码值存储到数据库的选项。

Build Status Scrutinizer Code Quality

一个简单的Laravel 5服务提供程序,用于包含Captcha for Laravel 5

针对 Laravel 4 Captcha for Laravel Laravel 4

预览

Preview

安装

可以通过在项目的 composer.json 中要求 mews/captcha 包并将 minimum-stability 设置为 dev(对于 Laravel 5 是必需的)来通过 Composer 安装 Captcha 服务提供程序。

{
    "require": {
        "laravel/framework": "5.0.*",
        "votong/captcha": "^1.0"
    },
    "minimum-stability": "dev"
}

或者

使用 composer 需求此包

composer require votong/captcha

使用 composer updatecomposer install 更新您的包。

在 Windows 上,您需要在 php.ini 中将 GD2 DLL php_gd2.dll 作为扩展包含。

使用方法

要使用 Captcha 服务提供程序,必须在启动 Laravel 应用程序时注册提供程序。有两种基本方法可以做到这一点。

config/app.php 中找到 providers 键并注册 Captcha 服务提供程序。

    'providers' => [
        // ...
        'VoTong\Captcha\CaptchaServiceProvider',
    ]

针对 Laravel 5.1+

    'providers' => [
        // ...
        VoTong\Captcha\CaptchaServiceProvider::class,
    ]

config/app.php 中找到 aliases 键。

    'aliases' => [
        // ...
        'Captcha' => 'VoTong\Captcha\Facades\Captcha',
    ]

针对 Laravel 5.1+

    'aliases' => [
        // ...
        'Captcha' => VoTong\Captcha\Facades\Captcha::class,
    ]

配置

要使用自己的设置,请发布配置。

$ php artisan vendor:publish

config/captcha.php

return [
    'default'   => [
        'length'    => 5,
        'width'     => 120,
        'height'    => 36,
        'quality'   => 90,
    ],
    // ...
];

示例用法

    // [your site path]/Http/routes.php

    Route::any('captcha-test', function()
    {
        if (Request::getMethod() == 'POST')
        {
            $rules = ['captcha' => 'required|captcha'];
            $validator = Validator::make(Input::all(), $rules);
            if ($validator->fails())
            {
                echo '<p style="color: #ff0000;">Incorrect!</p>';
            }
            else
            {
                echo '<p style="color: #00ff30;">Matched :)</p>';
            }
        }
    
        $form = '<form method="post" action="captcha-test">';
        $form .= '<input type="hidden" name="_token" value="' . csrf_token() . '">';
        $form .= '<p>' . captcha_img() . '</p>';
        $form .= '<p><input type="text" name="captcha"></p>';
        $form .= '<p><button type="submit" name="check">Check</button></p>';
        $form .= '</form>';
        return $form;
    });

返回图像

captcha();

或者

Captcha::create();

返回 URL

captcha_src();

或者

Captcha::src();

返回 HTML

captcha_img();

或者

Captcha::img();

要使用不同的配置

captcha_img('flat);

Captcha::img('inverse');

等等。

基于Intervention Image

^_^

链接