#php
#php
Вопрос:
Я нахожусь в ситуации, когда у меня есть только идентификатор сеанса, и я хочу получить доступ ко всей информации, присутствующей в этом сеансе. Я пытаюсь следовать вверху моего скрипта
session_id($_POST['SID']);
session_start();
Комментарии:
1. Ваш контекст выполнения должен иметь дескриптор только для одного сеанса, а данные находятся в $_SESSION
2. Поскольку вы можете получить доступ к
$_SESSION
, вам, вероятно, на самом деле не нужен идентификатор сеанса.3. @Matt Я получаю доступ к php-файлу через flash, поэтому файлы cookie не передаются. Но сервер тот же, поэтому я подумал, что может быть какой-то способ открыть сеанс, если у меня есть идентификатор сеанса
4. Ах, это имеет больше смысла. Я недостаточно знаком с PHP, чтобы знать, есть ли способ перейти к сеансу без надлежащего сессионного cookie. Я знаю , что вы не можете просто установить идентификатор сеанса и вызвать session_start(), хотя.
Ответ №1:
Вы пробовали использовать $_SESSION
?
Из заметок по использованию загрузчика YUI 3:
Из-за ограничений Flash Player загрузчик не передает данные сеанса в заголовке запросов POST, которые он отправляет на сервер. Чтобы передать данные сеанса, разработчику нужно будет программно извлечь их из DOM и отправить как часть тела запроса POST.
Вы это уже делаете?
Комментарии:
1. @Ayaz да, сразу после сеанса ничего не происходит
session_start()
. Чего вы ожидаете?2. Но в сеансе есть много данных, идентификатор которых я пытаюсь передать.
3. Я также вызывал session_start в предыдущих файлах. Я просто повторно открываю свой предыдущий сеанс
4. @MattBall Ты понятия не имеешь, что
session_start
делает, не так ли?5. @doug65536 пожалуйста, продолжайте.
Ответ №2:
то, что вы делаете, правильно в соответствии с документами, если вы хотите переопределить session_id:
http://php.net/manual/en/function.session-id.php
Затем используйте $_SESSION
суперглобальный.
Примечание: на самом деле вам не нужно этого делать, так как идентификатор будет автоматически присвоен / прочитан при session_start.
Комментарии:
1. Моя ситуация такова, что я использую YUI flash uploader для загрузки файлов. На стороне сервера один php-файл обрабатывает загрузки. Теперь, когда я открываю сеанс, мой сеанс становится пустым, поэтому я подумал, что может быть способ передать идентификатор сеанса для открытия сеанса.