Изменить значения _Session в другом приложении - PullRequest
0 голосов
/ 21 февраля 2009

Можно ли изменить значения внутри суперглобального массива _Session в PhP? Предположим, что _Session пишет в файлы.

Причина, по которой я спрашиваю об этом, состоит в том, что у меня есть два приложения: передний и задний. Внутренний интерфейс использует некоторые переменные внутри объекта _Session, и внешний интерфейс должен иметь возможность изменять эти значения, чтобы он мог взаимодействовать с внутренним сервером.

Ответы [ 2 ]

2 голосов
/ 21 февраля 2009

Если два приложения совместно используют сеанс PHP, тогда каждое из них может с радостью изменить $_SESSION.

Чтобы это произошло, вам нужно убедиться, что оба приложения хранят сеансы в одном и том же месте:

  • Оба находятся в одном домене, и путь к cookie не был изменен, например используя session_set_cookie_params().

или

  • Вы знаете идентификатор сеанса назад конец 'приложения и в вашем вызов приложения переднего плана session_id('back-end SessionId here') перед звонком session_start(). Два приложения должны иметь та же сессия Приложение переднего плана потеряло бы все данные, которые оно уже сохранило до этого момента в своем исходном сеансе.

В любом случае, два приложения, обменивающиеся данными о сеансе, не кажутся отличным решением

1 голос
/ 21 февраля 2009

$ _ SESSION так же модифицируемо, как $ _POST и $ _GET, просто знайте, что запись в $ _SESSION и затем перенаправление заголовка не работает, так как значения сеанса не записываются.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...