Сессия не публикуется немедленно в ModX Evo

Я использую Modx Evo 1.0.4 и пытаюсь получить значения через API и сохранить их в переменной сеанса modx. Это логин пользователя. После отправки учетных данных на следующей странице вызывается print_r($_SESSION); Однако пустой массив печатается. Если я обновлю эту страницу, будет показан массив с загруженными переменными сеанса.

Я создаю сессию здесь:

require_once '../manager/includes/config.inc.php';
startCMSSession();
$_SESSION['mx_iCode'] = "test";//$_SESSION['iCode'];
$_SESSION['mx_firstName']= $_SESSION['firstName'];
$_SESSION['mx_lastName']= $_SESSION['lastName'];
$_SESSION['mx_address'] = $_SESSION['address1'].' '.$_SESSION['address2'].'       .$_SESSION['address3'];
$_SESSION['mx_city'] = $_SESSION['city'];
$_SESSION['mx_state'] = $_SESSION['stProvince'];
$_SESSION['mx_zip'] = $_SESSION['postalCode'];

и распечатать его на странице, на которой он размещен, используя:

print_r($_SESSION);

Я попытался настроить параметры кэша на странице "print_r" в modX, но каждый параметр дает одинаковые результаты... то есть, он только перечисляет переменные Session после обновления страницы.

Является ли задержка результатом сохранения внешних сеансов в сеансах ModX?

1 ответ

Решение

РЕШИТЬ! В заключение.

На моей внешней странице я позвонил

session_start();

обрабатывать некоторые другие данные. я добавил

startCMSSession();

перед значениями мне нужно было получить доступ во фрагменте. Избавление от session_start() в целом решило проблему.

НЕ ИСПОЛЬЗУЙТЕ session_start() где-либо на странице с помощью startCMSSession().

Другие вопросы по тегам