Доступ к данным не текущих пользовательских сессий в PHP
Возможно ли получить доступ к данным в сеансах других пользователей, кроме сеансов, которые активны с подключенным в данный момент клиентом ($_SESSION)?
Если так, то как?
3 ответа
Да, но это был бы взлом. Вы должны взглянуть на механизм хранения сеанса и прочитать его напрямую. Я считаю, что это файлы по умолчанию, хранящиеся в /tmp
,
Если вам нужно быть более точным об этом, рассмотрите возможность определения собственного механизма хранения сеансов, а затем предоставьте exta-хуки, чтобы выполнить то, что вы хотите.
http://www.php.net/manual/en/function.session-set-save-handler.php
Да, вызовите session_id() перед session_start() и укажите интересующий вас идентификатор. Эта же функция также возвращает идентификатор текущего сеанса, который вы можете зарегистрировать или передать в другом месте. Вы можете сделать это несколько раз, закрыв сеанс, установив новый идентификатор и перезапустив. Он будет прозрачно предоставлять доступ ($_SESSION). Не забудьте установить его обратно, потому что он обновит файл cookie идентификатора сессии.
Вы можете получить данные сеанса, установив идентификатор сеанса:
http://example.com/index.php?PHPSESSID=1234
где 1234 - идентификатор сеанса