Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   загрузка файлов через iframe (https://javascript.ru/forum/events/32386-zagruzka-fajjlov-cherez-iframe.html)

land15 14.10.2012 21:31

загрузка файлов через iframe
 
Есть форма загрузки текста и до 10 файлов.
И текст и файлы обернуты каждый в свою форму, у которой target=динамически создаваемый iframe.
Сценарий перебирает все формы, делает submit, получает ответ из iframe и т.д.
С первой формой (текстовой) идет гугловская капча, если все совпадает, то сервер записывает для данной сессии переменную $_SESSION['pass']=true, и следующие за текстом файлы пропускает на основании этой переменной.
Работает везде кроме IE. Он не видит переменных сессии. Причем в конце первого запуска серверного скрипта var_dump($_SESSION) выдает правильное содержимое, такая же строка в начале второго запуска выдает уже пустой массив.
Кто встречался с таким, в чем дело?
Куки включены, PHPSESSID видно, совпадает с результатом session_id().

dmitriymar 14.10.2012 22:58

причём сервер к к клиенту?

land15 14.10.2012 23:15

я это и пытаюсь выяснить, как тип браузера может так повлиять на поведение серверного скрипта.
Ума не приложу, как это происходит.
Уверен, кто-нибудь встречался с такой загадкой, потому и спросил.

Nekromancer 14.10.2012 23:19

land15,
Есть там какие то магические проблемы в ИЕ с POST и куками. Полное исследование не проводил, но проблема скорее всего в expires.

land15 14.10.2012 23:44

Да есть такая штука, когда IE не посылает куки, читал.
Но у меня от IE приходит кука с именем PHPSESSID, которую выставляет первый запуск php скрипта посредством session_start().
Фокус в том, что второй запуск серверного скрипта имеет верный идентификатор сессии, но она или уже пустая, или заново создается, не пойму.
Проблема только при получении ответа сервера в iframe, если в бланк, например, то сессия работает.

Your 15.10.2012 04:23

Не нужно использовать фреймы.
Делайте через javascript.

land15 15.10.2012 09:54

Смешно, именно javascript и выполняет клиентскую часть.


Часовой пояс GMT +3, время: 05:01.