Php 使用AJAX重置Laravel 5.4密码
我有以下代码:Php 使用AJAX重置Laravel 5.4密码,php,ajax,laravel,laravel-5.4,Php,Ajax,Laravel,Laravel 5.4,我有以下代码: $.ajax({ url: "/password/email", data: { _token: $(".modal-forgotpass-content input[name='_token']").val(), email: $(".modal-forgotpass-content input[name='email']").val() }, type: "POST", success: functio
$.ajax({
url: "/password/email",
data: {
_token: $(".modal-forgotpass-content input[name='_token']").val(),
email: $(".modal-forgotpass-content input[name='email']").val()
},
type: "POST",
success: function(data) {
alert("Successful : link send");
},
error: function(e) {
alert("Faild: link not send");
}
});
控制器(此功能随Laravel 5.4提供):
路线:
Auth::routes();
此代码运行良好,但它会将密码重置链接发送到所有电子邮件,即使该电子邮件不存在于数据库(users表)中。我希望链接只发送到用户表中已经存在的电子邮件。而不是使用类似的验证
$this->validate($request, ['email' => 'required|email']);
如下所示验证它
$this->validate($request, ['email' => 'required|email|exists:users']);
这应该验证数据库中是否存在用户电子邮件。@Ilhamguezoula如果您的电子邮件不在名为“id”的列中,您需要
存在:用户,
在我这边,它显示[App\Http\Controllers\Auth\ForgotPasswordController]上不存在消息方法[getBroker]。异常BadMethodCallException
$this->validate($request, ['email' => 'required|email|exists:users']);