Не удается получить доступ к переменной $ _SESSION в PHP, вызванной из Flash - PullRequest
1 голос
/ 15 января 2010

У меня проблемы с доступом к переменной $_SESSION.

У меня есть session_start() в начале файла.

Я использую jQuery uploadify, и он вызывает бэкэнд-файл php, который не может получить доступ к $_SESSION переменным, хотя другие внешние файлы могут.

Может ли это иметь какое-то отношение к тому, как flash (jquery uploadify) вызывает php?

Кто-нибудь знает, как это обойти?

ОБНОВЛЕНИЕ: включил session_id в URL, но он не работал.

$('#image_upload').uploadify({
    'uploader':     '../../frontend/jquery/plugins/uploadify/swf/uploadify.swf',
    'script':       "controllers/image_upload.php?SID='.session_id()'",
    'fileDataName': 'upload',
    'method':       'POST',
    'multi':        'true',
    'fileDesc':     'tseting',
    'fileExt':      '*.jpg; *.jpeg; *.png',
    'sizeLimit':    '100000000',
    'buttonText':   'Ladda upp bilder',
    'auto':         'true'
});

РЕДАКТИРОВАТЬ: я думаю, что я знаю, в чем проблема.

в информации заголовка с livehtmlheader в FF выводится сообщение об ошибке:

 HTTP/1.x 404 Not Found

, в то время как другие обычные запросы страницы показывают

 HTTP/1.x 200 OK

кто-нибудь знает, как это решить?

РЕДАКТИРОВАТЬ: извините, я ошибся. это не было вызвано 404, это был запрос к другому файлу. При размещении с uploadify НЕТ запроса заголовок html не отправляется. Я думаю, что он использует другой подход, чтобы получить php-файл с flash (uploadify.swf).

так что теперь я не могу отправить этот sessid в мой php-файл :( нужно найти какой-то другой способ

Ответы [ 3 ]

2 голосов
/ 15 января 2010

В некоторых браузерах (firefox iirc) «специальные» вызовы, такие как загрузка файлов и amf, не всегда отправляют вместе сессионный cookie. Самый практичный способ обойти это - установить его как flashvar при встраивании flash и вручную отправить его вместе с вашим запросом.

0 голосов
/ 08 февраля 2011
0 голосов
/ 15 января 2010

Попробуйте добавить вручную "? SID =". Session_id () к URL.

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