Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何通过电子邮件重置电子邮件密码刀片?_Php_Laravel - Fatal编程技术网

Php 如何通过电子邮件重置电子邮件密码刀片?

Php 如何通过电子邮件重置电子邮件密码刀片?,php,laravel,Php,Laravel,我只是定制了重置密码电子邮件,一切都很好,但当我打开重置密码表单的刀片时,我没有收到电子邮件以将其放入输入电子邮件: 我的代码: class UserResetPassword extends Mailable implements ShouldQueue { use Queueable, SerializesModels; public $token; public function __construct($token) { $this-&

我只是定制了重置密码电子邮件,一切都很好,但当我打开重置密码表单的刀片时,我没有收到电子邮件以将其放入输入电子邮件:

我的代码:

class UserResetPassword extends Mailable implements ShouldQueue
{
    use Queueable, SerializesModels;

    public $token;

    public function __construct($token)
    {
        $this->token = $token;
    }

    public function build()
    {
        return $this->markdown('user.emails.user-reset-password');
    }
}
模板:

@component('mail::button', ['url' => route('password.reset',$token) ,'color'=>'success'])
   reset passowrd
@endcomponent
@component('mail::button', ['url' => route('password.reset',$token.'?email='.$email) ,'color'=>'success'])
  reset passowrd 
@endcomponent
用户模型:

public function sendPasswordResetNotification($token)
{
    Mail::to($this)->send(new UserResetPassword($token));
}
按如下方式输入电子邮件表单:

value="{{ $email ?? old('email') }}"
    class UserResetPassword extends Mailable implements ShouldQueue
{
    use Queueable, SerializesModels;

    public $token;
    public $email;

    public function __construct($token,$email)
    {
        $this->token = $token;
        $this->email = $email;
    }

    public function build()
    {
        return $this->markdown('user.emails.user-reset-password');
    }
}

输入中没有电子邮件吗?

尝试像Laravel那样:

第一个:在您的
用户
模型通行证中,也可以发送电子邮件

public function sendPasswordResetNotification($token)
{
  Mail::to($this)->send(new UserResetPassword($token,$this->email));
}
现在转到
UserResetPassword
,如下所示:

value="{{ $email ?? old('email') }}"
    class UserResetPassword extends Mailable implements ShouldQueue
{
    use Queueable, SerializesModels;

    public $token;
    public $email;

    public function __construct($token,$email)
    {
        $this->token = $token;
        $this->email = $email;
    }

    public function build()
    {
        return $this->markdown('user.emails.user-reset-password');
    }
}
在刀片模板中:

@component('mail::button', ['url' => route('password.reset',$token.'?email='.$email) ,'color'=>'success'])
  reset passowrd 
@endcomponent
现在运行
php artisan optimize:clear
,然后尝试发送电子邮件,您将在电子邮件输入中收到电子邮件