У меня проблема с приложениями FB в Internet Explorer 7.
Я использую этот фрагмент кода, предоставленный FB некоторое время назад:
$auth_url = "http://www.facebook.com/dialog/oauth?client_id="
. FACEBOOK_APP_ID . "&redirect_uri=" . urlencode(CANVAS_PAGE . 'index.php') . "&scope=user_likes,publish_stream";
$signed_request = $_REQUEST["signed_request"];
list($encoded_sig, $payload) = explode('.', $signed_request, 2);
$data = json_decode(base64_decode(strtr($payload, '-_', '+/')), true);
// If first time we use the application -> ask for permissions
if (empty($data["user_id"]))
{
echo("<script> top.location.href='" . $auth_url . "'</script>");
}
// else display the page code
else
{
}
Используя этот код, страница загружается правильно, но затем, через 1 секунду, она перезагружается и так далее, поэтому ее невозможно использовать.
Раскомментируя строку
echo("<script> top.location.href='" . $auth_url . "'</script>");
проблема решена (кстати, в моем случае код не должен выполнять эту строку ... Странно, что разкомментирование неиспользуемой строки кода решает мою проблему, но в любом случае ...)
После прочтения некоторых форумов у меня сложилось впечатление, что эта проблема связана с заголовком P3P. Поэтому я попытался добавить эту строку:
header('P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM"');
после тега body. Я также попытался добавить его непосредственно перед тегом body и наконец попытался добавить его как метатег:
<meta http-equiv="P3P" content='CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM CURa ADMa PHY ONL COM STA"'>
но ни один из этих 3 вариантов не работал для меня, и мое приложение все еще загружается вечно.
У кого-нибудь есть подсказка?
Заранее спасибо!
Ну, я прочитал несколько форумов, касающихся той же проблемы:
но ни одно из этих решений не помогло мне, у меня все еще есть эта вечная проблема с перезагрузкой страницы.
Я также прочитал форум, который, как я думал, решит мою проблему -
http://adamyoung.net/IE-Blocking-iFrame-Cookies - но опять же ... не повезло.
Кто-нибудь может мне помочь ???