我想发送电子邮件忘记密码功能congaing新密码。这里是我的代码,电子邮件不发送使用smtp laravel 5.4
MAIL_DRIVER=smtp
MAIL_HOST=smtp.sendgrid.net
MAIL_PORT=587
MAIL_USERNAME=offrs
MAIL_PASSWORD=mypassword
MAIL_ENCRYPTION=tls
这里是我发送邮件
public function sendMail(Request $request){
$new_key = str_random(10);
$data = array();
$data['email'] = $request->email;
$data['key'] = $new_key;
$checkUser = User::where('email','=',$request->email)->first();
if($checkUser == null){
return redirect()->back()->with('error','No User with this email exists in our record');
}
else{
Mail::send('mail.forgetPasswordMail', ['data' => $data], function ($message) use ($data) {
$message->from('[email protected]', 'RAIA Admin');
$message->to(Input::get('email'))->subject('Your New Password');
});
// $useremail = $request->get('email');
// $user = User::where('email', '=', $useremail)->first();
$checkUser->password = bcrypt($new_key);
$checkUser->save();
return redirect()->route('login')->with('success','Please Check Your email for new password');
}
}
它总是会产生误差函数。 (1/1)Swift_TransportException 无法与主机建立连接smtp.sendgrid.net [由于目标机器主动拒绝而无法建立连接。
10061]
在Swift_Transport_StreamBuffer->初始化(阵列( '协议'=> 'TCP', '主机'=> 'smtp.sendgrid.net', '端口'=> 587, '超时' => 30,'blocking'=> 1,'tls'=> true,'type'=> 1,'stream_context_options'=> array())) in AbstractSmtpTransport.php(line 113)
Help will请欣赏。
你的代码,您可能需要更改这些SMTP凭证,如果他们活的服务器上使用。还通过电子邮件发送密码真的不安全。 – cteski
我将来会更改密码方案。问题是电子邮件不在本地环境以及在服务器上发送。我使用Xampp作为本地服务器和heroku作为活动服务器。你能帮助我吗? –
有什么帮助吗? –