0

Facebook に接続する php ファイルから単純な変数を Flash に渡すのに問題があります。これが私がすることです:

ユーザーが私のゲームに参加すると、Facebook を使用してログインするオプションが表示されます。彼がそうすることを選択した場合、私は php ファイルを呼び出します。これにより彼は facebook に移動し、そこで彼はゲームへのアクセスを許可し、facebook は彼をゲームにリダイレクトします。再びゲームに入ると、Facebook からユーザー情報を取得するために、LoadVars を使用して同じファイルを呼び出します。ユーザーはすでに facebook に接続しているため、変数は通常どおり Flash に渡されるはずですが、渡されません。PHP のみを実行すると、変数は正常に表示されますが、単に Flash には移動しません。

Facebookでのアクセスを許可した後、ユーザーを別のphpファイルにリダイレクトすることで回避策を実行しました。この php ファイルは、ユーザーを再び Flash ゲームのインデックスにリダイレクトし、変数が正常に渡されるようにします。問題は、ユーザーを別の URL にリダイレクトしているため、リダイレクト エラーが発生することがあるということです...そして、このメソッドを使用したくありませんでした。

何か案は?

これが私のphpコードです:

<?php

require_once '../facebook.php'; // Require the Facebook PHP SDK

// CONNECT TO THE FACEBOOK APP
$config = array();
$config[appId] = 'xxxx';
$config[secret] = 'xxxx';
$config[fileUpload] = false;
$facebook = new Facebook ($config);

// GET THE USER ID
$user = $facebook->getUser();

if ($user) { // Succesfully got the user id. User is logged in to facebook
    $userProfile = $facebook->api('/me'); // Get the basic user info from his profile

    $toGame = "";
    $toGame .= $userProfile['first_name']."#";
    $toGame .= $userProfile['middle_name']."#";
    $toGame .= $userProfile['last_name']."#";
    $toGame .= $userProfile['birthday']."#";
    $toGame .= $userProfile['email']."#";
    $toGame .= $userProfile['gender'];

    echo $toGame;
}
else { // Failed to get the user's facebook id. Tell him to log on facebook
    $params = array ();
    $params[scope] = 'publish_stream, user_birthday, email';
    //$params[redirect_uri] = 'xxx';
    $params[redirect_uri] = 'xxx';
    $loginUrl = $facebook->getLoginUrl($params);

    echo "needLogin#".$loginUrl; // Tell Flash to redirect the user to the facebook connect page
}

?>
4

0 に答える 0