如何检查用户名和密码是否匹配laravel 7

如何检查用户名和密码是否匹配laravel 7,laravel,laravel-7,Laravel,Laravel 7,我正在使用laravel 7创建简单的登录表单。我想检查用户名和密码是否匹配。这是一个匹配重定向到主页。如果没有再次重定向登录页面,则显示错误用户名或密码不匹配。我尝试了以下代码,但对未定义的方法App\User::trunt()进行了错误调用 登录控制器。 public function check(Request $request) { $uname = $request->uname; $password = $request-

我正在使用laravel 7创建简单的登录表单。我想检查用户名和密码是否匹配。这是一个匹配重定向到主页。如果没有再次重定向登录页面,则显示错误用户名或密码不匹配。我尝试了以下代码,但对未定义的方法App\User::trunt()进行了错误调用

登录控制器。

 public function check(Request $request)
    {
    
         $uname = $request->uname;
         $password = $request->password;
         $user = User::where('uname',$a)->get()->last();
         $pass = User::where('password',$b)->get()->last();
    
         if (User::attempt(array('uname' => $uname , 'password' => $password ))){
            return "success";
            }
            else {        
                return "Wrong Credentials";
            }  
    }
查看登录信息

@extends('layout')
  
@section('content')
<div class="row">
    <div class="col-lg-12 margin-tb">
        <div class="pull-left">
            <h2>Login</h2>
        </div>
        <div class="pull-right">
            
        </div>
    </div>
</div>
   
@if ($errors->any())
    <div class="alert alert-danger"> 
        <ul>
            @foreach ($errors->all() as $error)
                <li>{{ $error }}</li>
            @endforeach
        </ul>
    </div>
@endif
   

  
     <div class="row">
     <form  action="{{ route('login.check') }}" method="POST">
     @csrf
        <div class="col-sm-4">

            <div class="left">
                <strong>UserName</strong>
                <input type="text" name="uname" class="form-control" placeholder="UName">
            </div>
      

        
            <div class="left">
                <strong>Password</strong>
                <input type="password" class="form-control"  name="password" placeholder="Password"></textarea>
            </div>
        

        </br>
        <div class="left">
                <button type="submit" class="btn btn-primary">Submit</button>         
        </div>

        </div>
        </form>
    </div>

您需要将
User::trunt
替换为
auth()->trunt

另一件事,您不需要手动检查
uname
passowrd
,您可以在
尝试
方法中为您执行此操作,因此如果 删除这两行

  $user = User::where('uname',$a)->get()->last();
  $pass = User::where('password',$b)->get()->last();
最后,取决于您的
用户
型号,您的
名称
不是
uname
,因此您需要像这样更新它

if (auth()->attempt(array('name' => $uname , 'password' => $password ))){
   return "success";
} else {        
   return "Wrong Credentials";
}  

对nullif(auth()->user()->trunt(数组('uname'=>$a,'password'=>$b)){对nullif(auth()->user()->trunt(数组('uname'=>$$user,'password'=>$$pass)))上的成员函数trunt()的调用显示错误(auth()->user()->trunt(数组('uname'=>$$user,'password'=>$$pass)){对成员函数的调用显示错误()在nullsorry我犯了错误时,我将其更新为
auth()->trunt
not hased,我刚刚创建了一个没有散列的文件
if (auth()->attempt(array('name' => $uname , 'password' => $password ))){
   return "success";
} else {        
   return "Wrong Credentials";
}