我正在使用laravel 5.0应用程序忘记密码功能。我要求用户输入注册的电子邮件并提交(post method)这个表单在jquery ajax post request上工作。从请求中收到电子邮件后,我在数据库中检查它是否存在。如果存在,我正在更新新密码,如果没有发送错误信息到此,每一个都没有问题。现在我试图用新密码发送电子邮件给用户,它不起作用。密码被更新,但没有电子邮件下面sending.Find
邮件没有从ajax发布请求发送laravel 5
public function forgot_pass(Request $request){
$email = $request->input('femail');
$data = ['email' => $email];
$user = Myuser::where($data)->count();
if($user == 0){
return response()->json(['status' => 'Invalid']);
}
else{
$user_details = Myuser::where($data)->get()->first();
$new_pass = $this->generateRandomString();
$md5_pass = md5("EEE".$new_pass);
$status = Myuser::where('email', $email)
->update(['pass' => $md5_pass]);
if($status){
$mail_data = ['name' => $user_details->name, 'new_pass' => $new_pass];
Mail::send('emails.newpassword', $mail_data, function($message)
{
$message->from('[email protected]', 'Laravel');
$message->to($email);
});
return response()->json(['status' => 'Invalid']);
}
}
}
其实我的控制器代码的邮件工作,如果我用$message->to('[email protected]');
代替$message->to($email);
。以下是我得到的错误。
感觉奇怪,为什么$email
导致错误。
你必须在路线URL呼叫方法不对。 –
@Autista_z什么错的方法?我没有得到你。 – prudhvi259