1

joomlaサイトでログインユーザーのデータにアクセスできません。誰かがそれについて私を助けることができますか?

私はこのコードを試しました:

define( '_JEXEC', 1 );
define( 'DS', '/' );
define( 'JPATH_BASE', $_SERVER[ 'DOCUMENT_ROOT' ] );
require_once( JPATH_BASE . DS .'xampp' . DS .'UPOnlineLeave '. DS .'includes' . DS . 'defines.php' );
require_once( JPATH_BASE . DS .'xampp' . DS .'UPOnlineLeave '. DS . 'includes' . DS . 'framework.php' );
require_once( JPATH_BASE . DS .'xampp' . DS .'UPOnlineLeave '. DS . 'libraries' . DS . 'joomla' . DS . 'factory.php' );
$mainframe =& JFactory::getApplication('site');
$mainframe->initialise();
    $user =& JFactory::getUser();
    $session =& JFactory::getSession();
$user->username;

しかし、それは生成しJOSerror:application instantation errorます。

誰かが私を助けることができますか?

4

2 に答える 2

1

まず、Joomla フレームワーク全体をロードする必要があります。

// Get Joomla! framework
define( '_JEXEC', 1 );
define( '_VALID_MOS', 1 );
define( 'JPATH_BASE', realpath(dirname(__FILE__)));
define( 'DS', DIRECTORY_SEPARATOR );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );

$mainframe =& JFactory::getApplication('site');
$mainframe->initialise();

そうして初めて、ユーザーの取得を試みることができます

$user =& JFactory::getUser();
$session =& JFactory::getSession();
于 2012-12-29T10:49:05.923 に答える
0

joomla の既定のライブラリを含めるには、次の行を含める必要があります。

index.phpプロジェクトファイルのルート パスでコードを参照することもできます。

define('_JEXEC', 1);
define('DS', DIRECTORY_SEPARATOR);

if (file_exists(dirname(__FILE__) . '/defines.php')) {
    include_once dirname(__FILE__) . '/defines.php';
}

if (!defined('_JDEFINES')) {
    define('JPATH_BASE', dirname(__FILE__));
    require_once JPATH_BASE.'/includes/defines.php';
}

require_once JPATH_BASE.'/includes/framework.php';
于 2012-12-29T12:27:43.637 に答える