![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
POLTER |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 123 Регистрация: 25.8.2006 Где: Ростов-на-Дону Репутация: 2 Всего: 2 |
Здравствуйте.
На сервере выполняется некий демон на PHP. И есть веб-приложение, которое использует сессии (тоже на PHP). Мне нужно из демона получить доступ к сессии веб-приложения, зная её SID. Можно ли как-то это сделать, не лазяя напрямик в файл и таблицу бд, где хранится сессия? Если да, то как? Спасибо. Это сообщение отредактировал(а) POLTER - 20.3.2008, 14:51 --------------------
Существует 10 типов людей: те, которые понимают твоичный код и те, которые его не понимают. |
|||
|
||||
Canarat |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
||||
|
||||
POLTER |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 123 Регистрация: 25.8.2006 Где: Ростов-на-Дону Репутация: 2 Всего: 2 |
Ну, я имел в виду, получить доступ через массив $_SESSION, без написания собственных обработчиков сессии. --------------------
Существует 10 типов людей: те, которые понимают твоичный код и те, которые его не понимают. |
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
первым делом замечу, что проще подобное делать через такие механизмы, которые и призваны быть "способом обмена информацией": БД или файлы. Тем более, что можно сделать сохранение в базу "прозрачным": при помощи session_set_save_handler установить собственный механизм записи, хранения и чтения. тогда в твоем "веб-приложении" будет работа с данными через переменную $_SESSION, а в демоне - обращением к непосредственному месту хранения установленному тобой(в БД).
но если так уж хочется обойтись без БД(месье желает извращений? ![]() 1. сформировать страницу(скажем, return_session_var.php)
2. демон будет обращаться к странице через lopback('127.0.0.1/return_session_var.php?PHPSESSID='.$phpSessionID) посредством сокетов или cURL(обычно так чужие страницы получают и парсят) и обрабатывай содержимое. |
|||
|
||||
POLTER |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 123 Регистрация: 25.8.2006 Где: Ростов-на-Дону Репутация: 2 Всего: 2 |
Ясно, спасибо!
--------------------
Существует 10 типов людей: те, которые понимают твоичный код и те, которые его не понимают. |
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
можешь попробовать установить "знаемое демоном session id" при помоши session_id.
не на чем проверить.
|
|||
|
||||
POLTER |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 123 Регистрация: 25.8.2006 Где: Ростов-на-Дону Репутация: 2 Всего: 2 |
Это я первым делом попробовал, но оно не работает в не-веб приложении.
Так что буду модифицировать таблицу в бд с сессией. Это сообщение отредактировал(а) POLTER - 20.3.2008, 16:16 --------------------
Существует 10 типов людей: те, которые понимают твоичный код и те, которые его не понимают. |
|||
|
||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
что значит - не работает? еси приложение написано на РНР, то не "не работает", а приложение написано криво.
и не забывать в демоне закрывать сессию после работы с ней. |
|||
|
||||
POLTER |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 123 Регистрация: 25.8.2006 Где: Ростов-на-Дону Репутация: 2 Всего: 2 |
Ну незнаю, может что-то неправильно делаю?
Вот просто пример:
Если запускаю из браузера, то выводит, что требовалось. А из консоли:
--------------------
Существует 10 типов людей: те, которые понимают твоичный код и те, которые его не понимают. |
||||
|
|||||
Feldmarschall |
|
|||
Новичок ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2641 Регистрация: 11.12.2007 Репутация: 22 Всего: 32 |
файлы сессий консольный пых откуда берет?
|
|||
|
||||
POLTER |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 123 Регистрация: 25.8.2006 Где: Ростов-на-Дону Репутация: 2 Всего: 2 |
О, прописал в php.ini session_save_path, теперь работает везде.
Спасибо большое за наводку! То, что мне нужно было ![]() Это сообщение отредактировал(а) POLTER - 22.3.2008, 00:49 --------------------
Существует 10 типов людей: те, которые понимают твоичный код и те, которые его не понимают. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |