2012-02-29 81 views
0

我嘗試使用會話進行登錄頁面,但遇到問題。致電會員功能 - Codeigniter

首先我創建了一個名爲giris的模型。該模型giris具有如下功能girisKontrol

function girisKontrol($username, $password) { 
     $sha1_password = sha1($password); 
     $query = "SELECT id FROM pasaj_register WHERE username = '".$username."' and password = '".$sha1_password."'"; 

     $result = $this->db->query($query, array($username, $sha1_password)); 

     if ($result->num_rows() == 1) 
      return $result->row(0)->id; 
     else 
      return false; 
    } 

和在控制器稱爲giris

寫下面的代碼,

public function main_page() { 


     $username = $this->input->post('username'); 
     $password = $this->input->post('password'); 

     $userID = $this->giris->girisKontrol($username,$password); 

     if (!$userID) { 

      $this->session->set_flashdata('login error', TRUE); 

      redirect('giris/giris'); 
     } else { 
      $this->session->set_userdata(array(
       'logged_in' => TRUE, 
       'userID' => $userID)); 



      redirect('welcome_message'); 
     } 
    } 

然而當處理形式。我把下面的錯誤,

enter image description here

是什麼原因?

+0

那麼,'controllers/giris'中的第19行是什麼? – 2012-02-29 15:58:28

+0

您是否加載模型? – 2012-02-29 15:59:32

回答

0

您可能尚未加載giris型號。

把這樣的東西放在控制器的構造函數裏,或者放在控制器的函數調用的頂部加載模型。

$this->load->model('giris'); 
+0

i addeed $ this-> load-> model('giris/giris');致命錯誤:無法在第21行的C:\ xampp \ htdocs \ pasaj \ application \ models \ giris \ giris.php中重新聲明類giris,並且第21行是this $ userID = $這 - > giris-> girisKontrol($用戶名,密碼$); – 2012-02-29 16:41:49

+0

@MertMETİN如果您可以用新代碼更新問題可能會更好。另外,你有沒有在其他地方加載模型?錯誤是說對象中已經有一個名爲'giris'的已定義屬性。它可能是除了模型之外的其他東西。 – 2012-02-29 16:58:16

0

你可能忘了你的模型加載:

調用

$this->load->model('giris'); 

之前

$userID = $this->giris->girisKontrol($username,$password); 
+0

i addeed $ this-> load-> model('giris/giris');致命錯誤:無法在第21行的C:\ xampp \ htdocs \ pasaj \ application \ models \ giris \ giris.php中重新聲明類giris,並且第21行是this $ userID = $這 - > giris-> girisKontrol($用戶名,密碼$); – 2012-02-29 16:43:49

+0

您是否遵循Code Igniter約定並將您的模型類命名爲Giris_model?聽起來你有多個名爲「Giris」的類,它們現在是衝突的。 – Phil 2012-02-29 18:31:59

+1

問題是,你的班級和你的模型具有相同的名字...改變你的班級像girisVO ... – Gerep 2012-03-01 00:24:25

0

的問題是,你的等級和你的模型具有相同的名稱。 ..將您的課程改成girisVO之類的東西,回報