gpt4 book ai didi

php - Laravel 5 密码重置电子邮件未发送

转载 作者:可可西里 更新时间:2023-11-01 00:30:36 25 4
gpt4 key购买 nike

我正在尝试在我的 Laravel 5.1 应用程序上实现密码重置。我已按照文档 ( http://laravel.com/docs/5.1/authentication#resetting-passwords ) 进行操作。但是,每当我点击 /password/email/ 上的“重置密码”按钮时,都不会发送任何电子邮件。

我故意输入了错误的电子邮件,但我收到了相应的错误,但是当我输入正确的电子邮件时,没有发送任何电子邮件,我也没有收到任何类型的消息或任何电子邮件。

我查看了我的数据库,它看起来好像正在创建密码重置 token ,只是没有发送电子邮件。

我的电子邮件配置工作正常,因为我的应用程序的其他部分可以正常发送电子邮件,只有这一部分没有发送电子邮件。任何帮助将不胜感激,因为我没有其他要检查的内容。

迈克尔

路线.php:`

// Password reset link request routes...
Route::get('password/email', ['as' => 'password/email', 'uses' => 'Auth\PasswordController@getEmail']);
Route::post('password/email', 'Auth\PasswordController@postEmail');

// Password reset routes...
Route::get('password/reset/{token}', 'Auth\PasswordController@getReset');
Route::post('password/reset', 'Auth\PasswordController@postReset');

密码.blade.php:

<form id="contact-form" class="contact-section" method="POST" action="/password/email">
<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">
<span class="pre-input"><i class="fa fa-envelope-o"></i></span>
<input class="name plain buffer" type="email" name="email" placeholder="Email" value="{{ old('email') }}">
<input id="send" class="plain button yellow" type="submit" value="Reset Password">
@foreach($errors->all() as $error)
<font size="3" color="red">{{ $error }}</font>
@endforeach

</form>

资源/views/emails/password.blade.php:

Click here to reset your password: {{ url('password/reset/'.$token) }}

更新我在 postEmail 函数中添加了一个日志。

    public function postEmail(Request $request)
{
$this->validate($request, ['email' => 'required|email']);

$response = Password::sendResetLink($request->only('email'), function (Message $message) {
$message->subject($this->getEmailSubject());
Log::info('Password Reset Execute -1 '); //Does work here


});

switch ($response) {

case Password::RESET_LINK_SENT:
return redirect()->back()->with('status', trans($response));

case Password::INVALID_USER:
return redirect()->back()->withErrors(['email' => trans($response)]);
}

Log::info('Password Reset Execute - 2'); //Will not work here
}

最佳答案

我在 .env 中添加了那些,密码重置又开始工作了

MAIL_FROM_ADDRESS=xx@xx.xx
MAIL_FROM_NAME=xxxx

关于php - Laravel 5 密码重置电子邮件未发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33962209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com