如何在 Laravel 9 表单中添加验证码验证和刷新验证码?

在这里,我将向您展示如何工作 How to Add Captcha code validate and refresh captcha in Laravel 9 Form?。
这是如何在 Laravel 9 中使用 Bootdetect 包创建验证码的简单示例。
您将学习 Laravel 9 Word 验证码和验证示例。
在本文中,我们将实现一个 Laravel 9 Captcha 教程。

让我们开始学习如何在 Laravel 9 中生成验证码。

本文将为您提供简单的 Laravel 9 Generate Captcha Code using Bootdetect Package Example

第 1 步:下载 Laravel

让我们通过安装一个新的 laravel 应用程序开始本教程。如果您已经创建了项目,则跳过以下步骤。

composer create-project laravel/laravel example-app

第 2 步:安装验证码包

第一步,我们将安装 captcha-com/laravel-captcha 包以生成验证码图像。通过这个包我们可以为我们的项目生成验证码图像。所以首先在您的 cmd 或终端中触发以下命令:

composer require captcha-com/laravel-captcha:"4.*"

现在我们需要在 config/app.php 文件中添加提供程序路径和别名路径,以便打开该文件并添加以下代码。
config/app.php

return [
    $provides => [
        LaravelCaptcha\Providers\LaravelCaptchaServiceProvider::class
    ],

现在我们将运行下面的命令,它将生成 app/captcha.php 文件进行配置,我们可以轻松地更改和自定义。

php artisan vendor:publish

第三步:创建控制器

我们将使用 Laravel 默认的身份验证机制来完成我们的项目。所以我们不需要创建新的控制器。在您的注册控制器中,您的默认验证器功能将如下所示。
app/Http/Controllers/Auth/RegisterController.php

protected function validator(array $data)
    {
        return Validator::make($data, [
            'name' => 'required|string|max:255',
            'slug' => 'required',
            'email' => 'required|string|email|max:255|unique:users',
            'password' => 'required|min:6|dumbpwd|confirmed'
        ]);
    }

现在您只需添加一行代码。看下面的代码

protected function validator(array $data)
    {
        return Validator::make($data, [
            'name' => 'required|string|max:255',
            'slug' => 'required',
            'email' => 'required|string|email|max:255|unique:users',
            'password' => 'required|min:6|dumbpwd|confirmed',
            'CaptchaCode' => 'required|valid_captcha'
        ]);
    }

看我们刚刚添加了 ‘CaptchaCode’ => ‘required|valid_captcha’ 行来获取验证码图像。

第 4 步:创建Blade文件

这是最后一步。因此,请转到您的资源/视图/auth/register.blade.php 并将以下代码添加到您的注册表单中。
resources/views/auth/register.blade.php

    <div class="form-group{{ $errors->has('CaptchaCode') ? ' has-error' : '' }}">
        <label class="col-md-4 control-label">Captcha</label>

        <div class="col-md-6">
            {!! captcha_image_html('ContactCaptcha') !!}
        <input class="form-control" type="text" id="CaptchaCode" name="CaptchaCode">

            @if ($errors->has('CaptchaCode'))
                <span class="help-block">
                    <strong>{{ $errors->first('CaptchaCode') }}</strong>
                </span>
            @endif
        </div>
    </div>

希望对您有用…

how-to-add-captcha-code-validate-and-refresh-captcha-in-laravel-9-form