ci架構$this->db->where得不到結果

來源:互聯網
上載者:User
關鍵字 php mysql
用ci寫登入代碼,用$this->db->where查詢資料庫驗證帳號密碼時得到的總是空的傳回值
以下是控制器中驗證的函數代碼:

public function validate_credentials(){        $this->load->model('Bookmark_models');        $query = $this->Bookmark_models->where();                if ($query){            $data = array('username' => $this->input->post('username'),                          'is_loggrd_in' => true);            $this->session->set_userdata($data);            $this->load->view('logged_in_area');        }else {            $this->login();        }

以下是模型中的代碼:

public function where(){        $this->db->where('username',$this->input->post('username'));        $this->db->where('passwd',sha1($this->input->post('password')));        $query = $this->db->get('user');                if ($query->num_rows == 1){            return true;        }

回複內容:

用ci寫登入代碼,用$this->db->where查詢資料庫驗證帳號密碼時得到的總是空的傳回值
以下是控制器中驗證的函數代碼:

public function validate_credentials(){        $this->load->model('Bookmark_models');        $query = $this->Bookmark_models->where();                if ($query){            $data = array('username' => $this->input->post('username'),                          'is_loggrd_in' => true);            $this->session->set_userdata($data);            $this->load->view('logged_in_area');        }else {            $this->login();        }

以下是模型中的代碼:

public function where(){        $this->db->where('username',$this->input->post('username'));        $this->db->where('passwd',sha1($this->input->post('password')));        $query = $this->db->get('user');                if ($query->num_rows == 1){            return true;        }

echo $this->db->last_query();輸出原生sql語句到資料庫中執行看有沒有結果.
num_rows()是個方法而不是屬性
另外也不建議你這麼寫,模型中就不建議做控制器的事了

public function login($user, $password)    {        return $this->db->where('username', $user)            ->where('password', sha1($password))            ->get('user')            ->row();    }
public function where(){        $this->db->where('username',$this->input->post('username'));        $this->db->where('passwd',sha1($this->input->post('password')));        $query = $this->db->get('user');        echo $this->db->last_query();exit();        if ($query->num_rows() ){            return true;        }        return false;
  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.