2011-12-13 43 views
2

我剛剛從一個php4共享主機移動到一個php5共享主機的CI應用程序中發生致命錯誤。Codeigniter調用一個非對象的成員函數set_userdata()

Fatal error: Call to a member function set_userdata() on a non-object in /home/chuck_ravenna/bob.ravennainteractive.com/system/application/helpers/authenticate_helper.php on line 13 

代碼全部位於下面的鏈接

https://gist.github.com/1474173

我試圖找出如果PHP版本可能是問題。該網站在舊服務器上運行良好,並且新服務器沒有將php4作爲選項。

具體的代碼行多數民衆贊成斷是:

$this->session->set_userdata("admin", $user[0]["admin"]); 
+0

爲什麼要調用`session_start()`並使用`$ _SESSION [「user」]`,而不是僅使用CI會話庫? – minboost 2011-12-14 00:53:23

回答

5

不能使用$this一個幫手內作爲輔助文件就是函數的集合(無級那裏)。要使用由控制器的$this提供的功能,你就必須做:

$ci = & get_instance(); 
$ci->session->set_userdata("admin", $user[0]["admin"]); 
1

$ CI = & get_instance(); ('session'); $(「會話」);

-2

您正在使用Codeigniter的默認配置。 問題是:NO DATABASE CONFIGURATION DONE! 您必須在此輸入:\ YOUR_APPLICATION_NAME \ application \ config \ database.php

並且您必須使用文本編輯器打開此文件。

設置下列變量和你做:

$active_group = "default"; 
$active_record = TRUE; 
$db['default']['hostname'] = "127.0.0.1"; 
$db['default']['username'] = "root"; 
$db['default']['password'] = ""; 
$db['default']['database'] = "NameOfYourDatabase"; 
0

你加載會話librairy在構造函數和後父:: __結構()指令?

相關問題