web-dev-qa-db-fra.com

Comment charger une session Joomla depuis un appel externe AJAX

J'ai un site Joomla 3, et sous ce site, mais pas dans le cadre de Joomla, je fais tout mon codage. La plupart des fonctionnalités que j’offre avec jQuery AJAX appelle. Dans les scripts PHP utilisés, je charge le framework Joomla qui est OK mais .. Charger la session est une autre affaire!

J'ai fait des tas de recherches, et le plus près que je me rende, c'est que je pourrais le faire si j'utilisais le mécanisme d'appel Joomla AJAX. J'ai essayé d'éviter cela, principalement parce que je ' Je n’ai jamais jeté un coup d’œil sous le capot, c’est une toute nouvelle "chose" à apprendre. Cela lie également mon code à Joomla.

Je charge le cadre comme ceci:

$joomlaBase = dirname(dirname(dirname(__FILE__)));
if (! defined('_JEXEC')) {
    define( '_JEXEC', 1 );
    define('JPATH_BASE', $joomlaBase);
    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('administrator');
    $mainframe->initialise(); 
}

Mais comment charger la session?

2
jr-highlands

Pour charger la session, vous devez l'obtenir de JFactory.

$session = JFactory::getSession();

En savoir plus sur Comment accéder aux variables de session définies par un script externe.

3
Valentin Despa