Laravel 5.6 中未定义 Index:email 错误

Undefined Index:email Error In Laravel 5.6

我想为我的网站添加登录功能。但不幸的是,它在我的 AdminController 中给出了 undefined Index:email:

public function login(Request $request)
{
        if($request->isMethod('post'))
        {
            $data = $request->input();
            if (Auth::attempt(['email' => $data['email'], 'password' => $data['password'],'admin' => '1'])) {
                echo "Success";
                //console.log("Successfull");
                die;
            }
            else
            {
                echo "Failed";
                //console.log("Failed");
                die;
            }
        }
        return view('admin.admin_login');
 }

在Blade中:

<div class="input-group mb-3">
    <div class="input-group-prepend">
        <span class="input-group-text bg-success text-white" id="basic-addon1"><i class="ti-user"></i></span>
    </div>
    <input type="email" name="email" class="form-control form-control-lg" placeholder="Email" aria-label="Email" aria-describedby="basic-addon1" required="">
 </div>

$data['email'] 更改为 $request->email。因为 $request 包含 object 而不是数组

您可以执行以下操作

public function login(Request $request)
{
        if($request->isMethod('post'))
        {

            if (Auth::attempt(['email' =>$request->email, 'password' => $request->password,'admin' => '1'])) {
                echo "Success";
                //console.log("Successfull");
                die;
            }
            else
            {
                echo "Failed";
                //console.log("Failed");
                die;
            }
        }
        return view('admin.admin_login');
 }

即使我在您的 blade 模板中也没有看到密码字段