Joomla — PHP сессия в joomla исчезает

#php #joomla #session-variables #joomla-component

#php #joomla #сессия-переменные #joomla-компонент

Вопрос:

У меня проблема, я надеюсь, что вы можете мне помочь: я программирую небольшой компонент и модуль в Joomla.

Этот компонент и модуль считывают переменную php сессии (эта переменная установлена ранее для внешнего php скрипта).

Внешний php скрипт:

 define( '_JEXEC', 1 );
        define( 'JPATH_BASE', realpath(dirname(__FILE__).'/..' ));

        require_once ( JPATH_BASE. '/includes/defines.php' );
        require_once ( JPATH_BASE. '/includes/framework.php' );
        $mainframe = JFactory::getApplication('site');
        $mainframe->initialise();

        //session_start();
        $session = JFactory::getSession();      
        $session->set('namevar', base64_encode('message'));

  

Модуль и компонент Joomla (имеют одинаковый код):

 $session = JFactory::getSession();
$mymessage = $session->get("namevar");
echo $mymessage ;

  

Любопытно то, что:
-Модуль работает нормально.
-Компонент не работает (и если я делаю var_dump($mymessage), он показывает NULL).

Более того, этот код работает время от времени:S

Есть идеи? Большое спасибо!

Комментарии:

1. Я включил консоль debud Joomla, и я вижу, что php session var существует, и это правильно (поэтому логично, что он появляется в модуле Joomla). Итак, проблема в том, почему переменные исчезают с помощью компонента Joomla? Спасибо!

2. Пожалуйста, всегда размещайте свои вопросы по Joomla на Joomla Stack Exchange.

3. Куда вы помещаете этот код в компоненте. просмотр файла, файла модели. Вы должны упомянуть об этом.

4. Привет @AmitRay, правильный сайт для просмотра этой информации будет в файле контроллера.