新的堆棧溢出(和codeigniter!),我在我的第一個項目上遇到這個問題,自然...我敢肯定它是我的一個笨蛋錯誤,但我一直在研究,並試圖找出過去的幾個小時,我貓似乎想通了......Codeigniter活動記錄致命錯誤
我有數據庫庫自動加載,但每次我嘗試使用我的模型中的方法我得到這個錯誤:
「致命錯誤:調用一個成員函數,其中()的非對象在應用\模型\上線13 user_model.php上」
這是我的用戶控制器的方法通過表單的動作從我的登錄表單視圖叫:
function login() {
$this->load->model('user_model');
$query = $this->user_model->validate();
if ($query)
{
$data = array(
'username' => $this->input->post('username'),
'is_logged_in' => true
);
$this->session->set_userdata($data);
redirect('members');
}
else
{
$this->load->view('user');
}
} // end login function
這是我的模型:
<?php
class User_model extends CI_Model {
function __construct() {
parent::__construct();
}
// -------------------------------------------------------------------------------
// validate(): query db for user/pass and return true or false
function validate() {
$this->db->where('username', $this->input->post('username'));
$this->db->where('password', sha1($this->input->post('password')));
$query = $this->db->get('users');
if ($query->num_rows() > 0)
{
return true;
}
} // end validate function
// -------------------------------------------------------------------------------
function check()
{
$dbo = $this->load->database('default',TRUE);
$query = $this->$dbo->get('users');
echo $query->num_rows();
}
} // end user_model class
,當我試圖調試的問題,我加入了數據庫的方法來控制和他們的工作罰款......在我的模型中使用它們時,他們不想因爲任何原因而工作,並拋出我提到的致命錯誤。感謝任何幫助你們拋棄我的方式。
在此先感謝!
(使用笨2.1)
編輯:
只是爲了澄清一些事情有點多,當我添加validate方法(從我的模型),以我的控制,我沒有得到任何錯誤,一切正常。但在模型離開它時,從控制器調用它,我得到了致命的錯誤
你絕對確保數據庫庫加載?要自動加載需要編輯'application/config/autoload.php'的庫,並在相應的數組中添加需要自動加載的內容。 – afarazit 2012-03-06 13:55:00
正面...不確定它是什麼,但我做了一些四處搜尋,發現其他人有同樣的問題。全新安裝的CodeIgniter具有相同的確切代碼和文件,問題消失了......奇怪...一直在CodeIgniter會話類中出現問題,必須將其切換爲讓會話爲我工作。毋庸置疑,幾天我的頭髮拉出,我終於進步:) – newguy13 2012-03-11 06:04:11