Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как правильно получать доступ к сессии по идентификатору / 3 сообщений из 3, страница 1 из 1
14.10.2015, 16:27
    #39076711
Vasiliy_Kashkin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно получать доступ к сессии по идентификатору
Есть некоторое клиентское приложение, не являющееся браузером (а конкретнее - это XML-RPC/SOAP-библиотека). Необходимо, чтобы серверный PHP-скрипт, используемый этим приложением, мог работать со стандартными PHP-сессиями. Естественно, что никакие Cookies и GET-параметры таким клиентом не передаются, поэтому стандартные способы получения PHPSESSID работать не будут. Собираюсь передавать PHPSESSID вручную в виде одного из аргументов XML-RPC/SOAP-запроса. В таком случае возникает вопрос - как корректно получить доступ к некоторой сессии, зная только её идентификатор? Корректен и применим ли следующий код?

Код: php
1.
2.
3.
session_id($my_session_id);
session_start();
print_r($_SESSION);



Он работает, но вопрос в том, насколько такой способ корректен, и нет ли при его использовании каких-либо "подводных камней"?

И сразу второй вопрос - можно ли за один сеанс обратиться к данным нескольких сессий? Пробовал следующий вариант:

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
//Доступ к первой сессии
session_id($my_session_id1);
session_start();
print_r($_SESSION);

//Доступ к второй сессии
session_id($my_session_id2);
session_start();
print_r($_SESSION);



В таком случае оба print_r выводят данные первой сессии, а данные второй сессии перезаписываются данными из первой. Что я делаю не так?

Заранее спасибо за ответ.
...
Рейтинг: 0 / 0
14.10.2015, 17:08
    #39076750
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно получать доступ к сессии по идентификатору
...
Рейтинг: 0 / 0
15.10.2015, 17:42
    #39077948
Vasiliy_Kashkin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно получать доступ к сессии по идентификатору
SharuPoNemnogu, спасибо, то, что надо!

Ещё бы узнать, как заставить функцию session_start не отправлять куки и не перезаписывать гиперссылки, только загружать данные из сессии, идентифицированной через session_id(). А то сообщения Warning: session_start() [function.session-start]: Cannot send session cookie раздражают.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Как правильно получать доступ к сессии по идентификатору / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]