2011-10-21 4 views
0

ここで少し混乱します。基本的な問題は私のファンページで、私はそれがFirefoxでうまく動作するアプリのアイコンをクリックするとIEで私は "このコンテンツはフレームに表示することはできません"エラーを取得し、クロームでそれは決して開くことはありませんアプリと空白になります。これは私がテストアカウントと一緒にアプリを作ったFacebookのプロフィールで私に起こった。奇妙なことは、私の他のFacebookアカウントでは、すべてのブラウザで完全に正常に動作することです。アプリは、検索や最近のアプリから直接アクセスしたときにも機能します。私は最近、アプリとセキュリティIDの名前を変更し、それを私のページに再接続しました。アプリの設定では、私のタブのURLは正しいです。キャンバスページ上部のコードは次のとおりです。Chromeのエラー/ファンページからFacebookにリダイレクトする

<?php  
$app_id = "181247898619054"; 
$app_secret = "xxxxxxxxxxxxxxxxxxxxxxxxxxx"; 
$my_url = "https://apps.facebook.com/wellnessq/"; 
session_register(); 
session_start(); 


if (!isset($_REQUEST["code"])) 
{ 
$_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection 
$dialog_url = "http://www.facebook.com/dialog/oauth?client_id=" 
    . $app_id . "&redirect_uri=" . urlencode($my_url) . "&scope=email&state=" 
    . $_SESSION['state']; 

echo("<script> top.location.href='" . $dialog_url . "'</script>"); 
exit; 
} 
$code = $_REQUEST['code']; 
{ 
    $token_url = "https://graph.facebook.com/oauth/access_token?" 
    . "client_id=" . $app_id . "&redirect_uri=" . urlencode($my_url) 
    . "&client_secret=" . $app_secret . "&code=" . $code; 

$response = file_get_contents($token_url); 
$params = null; 
    parse_str($response, $params); 

    $graph_url = "https://graph.facebook.com/me?access_token=" 
    . $params['access_token']; 

    $user = json_decode(file_get_contents($graph_url)); 
} 

?> 

アイデアをお持ちですか?あなたが自分でエラーを見たいのであれば私に知らせてください、そして、私はそれらを見つけるためにどこに投稿します。ありがとう。

+0

Chromeがスクリプトリダイレクトの挿入を気に入らない場合は、ハイジャックの試行と混同して削除したり、エラーを表示したりする可能性があります。 – Tim

+0

本当の変な部分は、それが私のFacebookのアカウントの1つでのみ起こることです、他の1つはすべてのブラウザで正常に動作します。私はすべてのクッキーを削除し、再試行しましたが、成功しませんでした。 – Trey

答えて

0

リンクにリダイレクトするためにPHPヘッダーを使用できますか?

header('Location: http://www.yoursite.com/new_page.html') ; 
+0

ええ、それは動作しませんでした。それはFacebookのホームページからのアプリ一覧から動作するので非常に奇妙ですが、ファンページからアプリに行くときは何も許可されていません。この問題は存在しませんでした。 – Trey

関連する問題