0

これは私の問題です。ユーザーが最初にアプリケーションに入るときに問題はありません...検出されないか、承認されたユーザーでなくてもアプリを起動します。申請プロセスは次のとおりです。

  1. 画像をクリックしてスタート
  2. 「参加する」ボタンをクリック
  3. JavaScript SDK はユーザーを検出せず、ポップアップ インストールと許可を表示します。インストール: 許可を与え、フォームに記入し、フォームを送信して、スコアリング スクリプトにリダイレクトします。

しかし、ユーザーが facebook からログアウトし、同じ IP から別のユーザーに再接続すると、問題が発生します。

  1. 画像インデックスをクリックします (ユーザー ID 0 を示しています)。
  2. 「参加者」ボタンをクリックします。
  3. JavaScript SDK は、以前にログインしたユーザー ID を同じ IP から検出します。

次に、スクリプト join.php がそれらを自動的に score.php にリダイレクトし、score.php がデータベース内に有効な ID を検出しない (権限が与えられておらず、フォームも送信されていないため)、index.php にリダイレクトします。インデックスはまだユーザー 0 を示しています。「Participar」をもう一度クリックすると、すべてが正しく機能します。

誰が何が間違っている可能性があるか知っていますか? スクリプトとテンプレートを以下に示します。

PHP ファイル、順番

  1. index.php pastebin.com/jnCR7dqq
  2. join.php pastebin.com/YF4xBfAu
  3. score.php pastebin.com/EcjQWTy1

HTML ファイル、順番

  1. index.html pastebin.com/WUqNQx5x (インデックス div 間の js サイクル、偽の href)
  2. join.html pastebin.com/Qst0JvUT ( js 偽 a href)
  3. score.html pastebin.com/8ns0XCQW (インデックス div 間の js サイクル、偽の href)
4

1 に答える 1

1

cookiesFacebookオブジェクトの初期化中に属性を削除すると、ほぼ同様の問題が修正されました。

変化する $facebook = new Facebook(array('appId' => APP_ID, 'secret' => APP_PW, 'cookie' => true));

$facebook = new Facebook(array('appId' => APP_ID, 'secret' => APP_PW));

于 2012-11-09T16:05:56.507 に答える