ユーザーが CodeIgniter にログインしているかどうかを確認する必要があります。
ログインはJoomlaサイトで行われています。
joomla を初期化するために次のことを試しました。
define( '_JEXEC', 1 );
define( 'DS', DIRECTORY_SEPARATOR );
define('JPATH_BASE', dirname(__FILE__) );
require_once ("../includes/defines.php");
require_once ("../includes/framework.php");
$mainframe =& JFactory::getApplication("site");
$mainframe->initialise();
$session =& JFactory::getSession();
$user = $session->get( 'user' );
しかし、私はこのメッセージを受け取りました:
構成ファイルが見つからず、インストール コードも利用できません。終了しています...
Joomla は root にインストールされ、codeigniter は root/advanced にインストールされます
コントローラーでコードを呼び出しています。
どうすればこれを解決できますか?
編集:
今、私はこのエラーが発生しています:
PHP エラーが発生しました
重大度: 通知
メッセージ: 未定義の変数: BM
ファイル名: core/CodeIgniter.php
ライン番号: 364
編集
私のコントローラーはこのように見えます
function is_logged()
{
define( '_JEXEC', 1 );
define( 'JPATH_BASE', '../');
define( 'DS', DIRECTORY_SEPARATOR );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
//require_once ("../libraries/joomla/user/authentication.php");
$mainframe =& JFactory::getApplication("site");
$mainframe->initialise();
$session =& JFactory::getSession();
$user = $session->get( 'user' );
}
ディレクトリ構造
--Public_html
--Joomla Istallation files
--Advanced [This is a folder ,i installed codeignitor on this folder]
したがって、joomla へのパスは、Codeignitor へのsite.com/
パスはsite.com/advanced
エラーの詳細
Codeignitor Core の 364 行目は次のように述べています。
// Mark a benchmark end point
$BM->mark('controller_execution_time_( '.$class.' / '.$method.' )_end');
CIコアの開始時に次のように表示されます
$BM =& load_class('Benchmark', 'core');
$BM->mark('total_execution_time_start');
$BM->mark('loading_time:_base_classes_start');