2013-05-21 69 views
-2

我正在開發一個使用CodeIgniter的網站。當我打開我的網頁我得到這個錯誤:調用一個成員函數,其中()在非對象

CodeIngiter Error

我還沒有遇到過這個問題,知道我有它在使用數據庫庫中的每個控制器。

這是在一個模型中的功能的一個例子,其中我得到錯誤:

public function login($pseudo,$password) 
    { 

    $this->db->where("pseudo",$pseudo); 
    $this->db->where("password",$password); 

    $query=$this->db->get("admin"); 
    if($query->num_rows()>0) 
    { 
     foreach($query->result() as $rows) 
     { 
     //add all data to session 
     $newdata = array(
      'admin_id' => $rows->id, 
      'admin_pseudo' => $rows->pseudo, 
      'admin_fullname' => $rows->fullname, 
      'admin_email' => $rows->email, 
      'admin_logged_in' => TRUE, 
     ); 
     } 
     $this->session->set_userdata($newdata); 
     return true; 
    } 
    return false; 
    } 

線13是:$this->db->where("pseudo",$pseudo);

這是控制器:

public function login() 
    { 
    $this->load->library('form_validation'); 
    $this->form_validation->set_rules('login', 'Pseudo', 'trim|required|min_length[4]|max_length[32]'); 
    $this->form_validation->set_rules('password', 'Password', 'trim|required|min_length[4]|max_length[32]'); 
    $pseudo=$this->input->post('login'); 
    $password=md5($this->input->post('password')); 


    $result=$this->admin_model->login($pseudo,$password); 



    if($this->form_validation->run() == FALSE) 
    { 
     $this->index(); 
    } 
    else 
    { 
     if ($result) $this->dashboard(); 
     else   
     $this->index(); 
    } 
    } 

在我有自動加載文件:

$autoload['libraries'] = array('database','session'); 

回答

0

$this->db顯然不是一個對象。在調用之前檢查它是否被正確初始化了login()

0
  • 你能真正連接到你的數據庫嗎?
  • 您是否修改了包含數據庫連接參數的任何配置文件?
  • 您是否以任何方式修改了數據庫的用戶?
+0

是的我可以連接到我的數據庫,我沒有修改數據庫連接參數,我也沒有修改我的數據庫的用戶 –

相關問題