Validation 在Laravel 4中检查电子邮件

Validation 在Laravel 4中检查电子邮件,validation,email,laravel,Validation,Email,Laravel,我使用的是框架laravel 4,目前我很难检查输入的电子邮件是否仍处于活动状态或已被电子邮件提供商删除 请帮忙。谢谢这只需要向已知电子邮件地址发送确认电子邮件即可。 你什么时候需要检查这个-注册,时事通讯还是什么? 如果要使用确认,则需要在数据库中添加一个新列,该列保存分配的随机令牌,并添加一个视图/控制器/路由来检查该令牌(确认/1234567890)然后使用此令牌搜索用户并设置此用户已确认的标志。您需要为用户添加通过单击发送给他们的电子邮件中的链接来验证其电子邮件地址的功能 这通常看起来像

我使用的是框架laravel 4,目前我很难检查输入的电子邮件是否仍处于活动状态或已被电子邮件提供商删除


请帮忙。谢谢

这只需要向已知电子邮件地址发送确认电子邮件即可。 你什么时候需要检查这个-注册,时事通讯还是什么?
如果要使用确认,则需要在数据库中添加一个新列,该列保存分配的随机令牌,并添加一个视图/控制器/路由来检查该令牌(确认/1234567890)然后使用此令牌搜索用户并设置此用户已确认的标志。

您需要为用户添加通过单击发送给他们的电子邮件中的链接来验证其电子邮件地址的功能

这通常看起来像这样:

添加迁移

class AddVerificationColumnsToUsersTable extends Migration {

    public function up()
    {
        Schema::table('users', function(Blueprint $table)
        {
            $table->boolean('confirmed')->default(0);
            $table->string('confirmation_code')->nullable();
        });
    }

    public function down()
    {
        Schema::table('users', function(Blueprint $table)
        {
            $table->dropColumn('confirmed');
            $table->dropColumn('confirmation_code');
        });
    }
}
在注册逻辑中,您需要设置确认代码:

这是一个示例,必须根据您的注册实施进行修改:

public function store()
{
    // Logic that gets input and creates $user goes here
    $user->confirmation_code = str_random(30);
    $user->save();

    Mail::send('emails.verification', ['user' => $user], function($message) use ($user)
    {
        $message->from('admin@yoursite.com', 'Yoursite');
        $message->to($user->email);
    });
}
您需要创建电子邮件模板:

// resources/views/emails/verification.blade.php

Hi {{ $user->name }},

Please click the following link to verify your account:
<a href="{{ route('users.verify') }}">{{ route('users.verify') }}</a>
// routes.php

Route::get('users/verify/{confirmation_code}', [
    'as' => 'users.verify',
    'uses' => function ($confirmation_code) {
        $user = User::where('confirmation_code', $confirmation_code)->first();
        $user->confirmed = true;
        $user->save();
    }
]