2012-05-08 8 views
0

私はPHP SDKを使ってFacebookアプリを開発し始めていますが、私は認証/ログインプロセスに関する2つのdoubsを持っています。私はのような何かをやって、最初の疑いを持っている今ユーザーがログオンしたときにセッションを保存する必要がありますか?

require_once("facebook.php"); 

    $config = array(); 
    $config[‘appId’] = 'xxxxxx'; 
    $config[‘secret’] = 'xxxxxx'; 
    $config[‘fileUpload’] = false; // optional 

    $facebook = new Facebook($config); 

    $user = $facebook->getUser(); 

私はこのコードを持っている

if ($user === 0) { .... } 

質問: - それは、ユーザがログインしているかどうかを確認、またはユーザーかどうかんアプリを承認しましたか? (明らかに$user != 0とき)

はその後、私は自分のアプリケーションを承認またはない場合、ユーザは、このように、選択できるように認証ダイアログを表示:

$loginUrl = $facebook->getLoginUrl(array{ 
    'scope' => 'read_stream', 
    'redirect_uri' => 'https://www.myapp.com/login.php' 
}); 
echo("<script> top.location.href='" . $loginUrl . "'</script>"); 

質問: 私は$であれば、このコードを使用する必要がありますユーザーは0を返しますか?つまり、このコードの範囲は何ですか? Facebookやアプリの認証にログインする?

ありがとうございました!

+0

コードに文字の引用符があるのはなぜですか?あなたはMS Wordで質問を書いたのですか? – ThiefMaster

答えて

1

ユーザーがログオンしているか、ユーザーがアプリを承認しているかどうかを確認しますか?

ユーザーがFacebookにログインしていることを確認し、有効なトークンを使ってアプリを承認しているかどうかを確認します。

$ userが0を返す場合は、このコードを使用する必要がありますか?つまり、このコードの範囲は何ですか? Facebookやアプリの認証にログインする?

このコードの適用範囲はアプリの承認です。それはhttps://www.myapp.com/login.php?state=$s&code=$NEW_TOKENにリダイレクトされ、その後(ユーザーがアプリを承認していないか、彼がした場合は、トークンが有効でない場合)

$userた場合は、Facebookの認証/ログインページにリダイレクトする0使用コードの一部であります そして、facebook PHPライブラリは$_REQUEST['code']を扱うので、$ userはユーザーのfacebook IDを返します。

+0

お返事ありがとうございました、よろしくお願いします...ただ一つだけ.. TOKENとは何が関係していますか?私はそれを管理する必要がありますか?またはPHPのsdkは自動的にそれを行いますか? – Dail

+1

いいえ、ユーザーが '$ loginUrl'からリダイレクトされた後、自動的にphp-sdkが行います EDIT: テストユーザーを作成することをお勧めする場合は、https://developers.facebook.com/apps/アプリを選択して役割に行く)、さまざまなシナリオを試してみてください。 ここにログインして情報を取得するための擬似コードhttp://pastebin.com/GjvRqxCy < - これは擬似コードではなく、テスト/ラーニングに使用してください。 – 0xAli

関連する問題