2011-12-13 10 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がありません。

特定のコード行は、破壊のthatsです:あなたはヘルパーファイルとしてヘルパー内$thisを使用することはできません

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

なぜ、CIセッションライブラリを使用するのではなく、 'session_start()'を呼び出して '$ _SESSION [" user "]'を使用していますか? – minboost

答えて

5

機能のちょうどコレクション(そこにはクラス)です。コントローラの$thisによって提供される機能を使用するには、行う必要があるでしょう:

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

$ CI = & get_instance();

$ CI-> load-> library( '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をロードし、親:: __構築物()命令の後にしていますか?

関連する問題