1

ユーザーが Facebook アカウントを使用して私の Web サイトにログインしようとすると、ユーザー ID をデータベースと照合して登録されているかどうかを確認するスクリプトにリダイレクトしようとしています。ログインをクリックすると、fb資格情報を使用してログインするためのfacebookページが表示されますが、データベースに対してユーザーをチェックするスクリプトを実行するのではなく、mywebsiteのホームページにリダイレクトされます。

これは、ログインを試みるホームページのコードです。

<?php
require '.../src/facebook.php';

$facebook = new Facebook(array(
  'appId'  => 'APP_ID',
  'secret' => 'SECRET',
  'cookie' => true,
));

//2. retrieving session
$session = $facebook->getUser();

//3. requesting 'me' to API
$me = null;
if ($session) {
    try {
       $uid = $facebook->getUser();
       $me = $facebook->api('/me');
    } catch (FacebookApiException $e) {
       error_log($e);
    }
}

//4. login or logout
if ($me) {
    $logoutUrl = $facebook->getLogoutUrl(array(
        'next'=>'http://.../logout.php'
    ));
} else {
    $loginUrl = $facebook->getLoginUrl(array(
       'next'=>'http://.../checkFBLogin.php'
    ));
}

?>

さらに下に:

<?php if ($me): ?>
    <a href="<?php echo $logoutUrl; ?>">Logout with Facebook</a>
<?php else: ?>
    <a href="<?php echo $loginUrl; ?>">Login with Facebook</a>
<?php endif ?>

また、Facebook にログインする前に私のデータベースをチェックして、私の Web サイトに登録されているかどうかを確認する方法があるかどうかを知っておくと役立ちます.

4

1 に答える 1

1

配列内のキーの名前は、redirect_url の次ではありません。

$loginUrl = $facebook->getLoginUrl(array(
       'redirect_url'=>'http://.../checkFBLogin.php'
    ));
于 2013-10-08T09:56:26.693 に答える