Попробуйте добавить этот заголовок поверх вашего php-файла:
<?php
header('p3p: CP="NOI ADM DEV PSAi COM NAV OUR OTR STP IND DEM"');
?>
Это заставит междоменные вызовы AJAX работать в IE
РЕДАКТИРОВАТЬ:
На самом деле длинный правильный ответ таков:
При разработке приложения IFrame Canvas (или любого другого iframe, размещенного на странице в другом домене) доступ к cookie-файлам (известным как сторонние cookie-файлы)ограничено при некоторых условиях (Конфигурация IE по умолчанию).Firefox, Chrome, Safari, Opera работают должным образом, но IE блокирует доступ к этим файлам cookie.Наличие этого заголовка (который называется P3P Compact Privacy Policy ) заставит IE принимать куки-файлы из разных доменов.
И как это заставляет ваш код сеанса работать ???
Чтобы сохранить информацию о сеансе на сервере, страница выдает файл cookie сеанса, который хранится в клиенте.Если ваш iframe использует сессию, браузер должен разрешить ему сохранять куки.
Падение для сохранения куки означает, что сессия будет потеряна и ваш код на основе сессии потерпит неудачу, как вы опубликовали.
Надеюсь, это поможет.
PS: Кстати, я понятия не имею, что означают все странные аббревиатуры в заголовке p3p.Я видел много вариантов его работы, поэтому вы должны попытаться немного подробнее изучить его