Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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
对成员函数的调用在laravel中的字符串上具有()_Laravel - Fatal编程技术网

对成员函数的调用在laravel中的字符串上具有()

对成员函数的调用在laravel中的字符串上具有(),laravel,Laravel,我正在进行用户身份验证。当用户提供无效的电子邮件或密码时,我想用一条闪现错误消息将其重定向到login.blade.php // Auth/LoginController: public function login(Request $request) { $user=User::where('email',$request->email)->first(); if(!is_null($user)) { if($user->statu

我正在进行用户身份验证。当用户提供无效的电子邮件或密码时,我想用一条闪现错误消息将其重定向到
login.blade.php

// Auth/LoginController:

public function login(Request $request)
{
    $user=User::where('email',$request->email)->first();

    if(!is_null($user))
    {
        if($user->status==1)
        {
            if(Auth::guard('web')->attempt(['email'=>$request->email,'password'=>$request->password],$request->remember))

                return redirect()->intended(route('index'));

            }

        }

        else
        {

            if(Auth::guard('web')->attempt(['email'=>$request->email,'password'=>$request->password],$request->remember))
            {
                if(Auth::check())
                {
                    Auth::logout();
                }
            $user->notify(new VerifyRegistration($user));
            session()->flash('success','A new confirmation mail has sent to you...Please check and confirm your email');
            return redirect('/');
            }
            else
            {
                session()->flash('errors','Password is incorrect!!');
                return redirect()->route('login');
            }
        }
    }
    else
    {

        session()->flash('errors','Email or Password is incorrect!!');
            return redirect('/login');
    }
}

我使用的是默认的laravel。

当用户输入错误的密码而不是设置会话闪存消息时,请使用下面给定的代码在else条件下重定向用户

return redirect()->route('login')->with('error','Invalid password.'); 
在登录模板上,您可以显示以下错误:

           @if (session('success'))
            <div class="alert alert-success">
              <p>{{ session('success') }}</p>
            </div>
            @endif

            @if (session('warning'))
                <div class="alert alert-warning">
                    <p>{{ session('warning') }}</p>
                </div>
            @endif

            @if (session('error'))
                <div class="alert alert-error">
                    <p>{{ session('error') }}</p>
                </div>
            @endif
@if(会话('success'))
{{session('success')}

@恩迪夫 @if(会话(‘警告’) {{session('warning')}

@恩迪夫 @if(会话('error')) {{session('error')}

@恩迪夫
什么不起作用?请清楚一点。当我提供错误的电子邮件或密码时,它不会将我重定向到login.blade.php。它向我显示了错误,“对成员函数的调用在字符串上有()(视图:C:\xampp\htdocs\lsapp\resources\views\auth\login.blade.php)”。异常表示问题来自视图,而不是控制器。您能提供视图的代码吗?这是我的login.blade.php您是对的,但您的答案应该是一条注释,因为它不能解决作者的问题。@KévinBibollet它很可能会解决作者问题,因为作者问题是由
login.blade.php
上的
$errors
对象为空引起的。因此,
$errors->has()
方法返回了一个错误。我认为作者的if条件有问题,因为在大多数情况下,上述语法将flash消息传递给视图@KévinBibolletYes当我写return redirect()->route('login')->with('errorsnew','Invalid password')时它会工作;当我在错误上运行foreach循环时,它会显示错误?如果是,请张贴您收到的错误。