簡體   English   中英

未定義的屬性:App\\Controllers\\Admin::$user

[英]Undefined property: App\Controllers\Admin::$user

每當我單擊提交按鈕時,我都想登錄,我獲得有關用戶名和密碼的所有信息以登錄並可以進入儀表板。 有人可以幫我嗎?

但我收到了一個類似Undefined property: App\\Controllers\\Admin::$user的錯誤Undefined property: App\\Controllers\\Admin::$user

這是我的代碼:

public function __construct()
    {
        $this->user = new UserModel();
        $this->sponsor = new SponsorModel();
        $this->auditorium = new auditoriumModel();
    }
public function index()
    {
        $user = $this->user->findAll();
        $audVid = $this->auditorium->findAll();
        $sponsorData = $this->sponsor->findAll();
        $data = [
            'user' => $user,
            'sponsorData' => $sponsorData,
            'audvid' => $audVid
        ];
        // dd($sponsorData);
        echo view('templates/header');
        echo view('login', $data);
        echo view('templates/footer');
    }

    public function doLogin()
    {
        $email
            = $this->request->getVar('email');
        $password =
            $this->request->getVar('password');
        $userData = $this->user->where('email', $email)
            ->where('password', $password)
            ->findAll();
        if ($userData == null) {
            return redirect()->to('/admin');
        } else {
            $_SESSION['logonUser'] = 'aktif';
            return redirect()->to('/adminDashboard', $userData);
        }
    }
}

這是我的登錄視圖

<form id="login-form" class="form" action="/admin/doLogin" method="post">
    <h3 class="text-center text-info">Login Admin</h3>
    <div class="form-group">
        <label for="username" class="text-info">Username:</label><br>
        <input type="text" name="username" id="username" class="form-control">
    </div>
    <div class="form-group">
        <label for="password" class="text-info">Password:</label><br>
        <input type="text" name="password" id="password" class="form-control">
    </div>
    <div class="form-group">
        <labezl for="remember-me" class="text-info"><span>Remember me</span> <span><input id="remember-me" name="remember-me" type="checkbox"></span></labezl><br>
        <input type="submit" class="btn btn-info btn-md" value="submit" href="/adminDashboard">
    </div>
    <div id="register-link" class="text-right">
        <a href="#" class="text-info">Register here</a>
    </div>
</form>

有人可以幫我解決我的代碼嗎? 謝謝

    $userData = $this->user->where('email', $email)
        ->where('password', $password)
        ->findAll();

findAll() 將為您提供適用於您的條件的行數組。 在您的情況下,將嘗試查找電子郵件和密碼正確的所有用戶,但它仍會返回一組用戶,而不僅僅是一個。 您需要改用 find() 。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM