0

example.php に基づいていくつかのコードをテストしており、getUser()現在 FB にログインしているにもかかわらず 0 を返しています。私の index.php ページのコードは次のとおりです。

<?php

include 'fbLibrary/facebook.php';

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


$user=$facebook->getUser();
echo "getUser() returned " . $user . "<p>";


if ($user)
{
    //fb query
    try
    {
        $me=$facebook->api('/me');
        print_r($me);

    }
    catch (FacebookApiException $e)
    {
        echo $e->getMessage();
    }
}


if ($me)
{
    $logoutUrl=$facebook->getLogoutUrl();
    echo "<a href='$logoutUrl'>Logout</a>";
}

else
{
    $loginUrl=$facebook->getLoginUrl(array(
        'scope' => 'friends_status,publish_stream'
    ));
    echo "<a href='$loginUrl'>Login</a>";
}

?>

index.php ページに移動すると、「getUser() が返されました」というエコー テストで 0 が返さ$loginUrlれます。URL が設定されていても、クリックすると同じ index.php ページに移動します。

FB からログアウトしてページをリロードし、[ログイン] をクリックすると、Facebook に移動してアプリにログインします。その後、正常にログインすると、機能していないログイン URL を含む index.php ページに戻り、getUser() は引き続き 0 を返します。

昨日PHP SDKをダウンロードしたばかりなので、最新のものだと思います。

4

1 に答える 1

0

次に、FB クラスのパラメーター ドメインを設定できます。このようなもの:

<?php
$facebook = new Facebook(array(
'appId' => APP_ID,//$app_id,
'secret' => APP_SECRET,//$app_secret,
'cookie' => true,
'domain'=>'xxxdomain.com',
));
$session = $facebook->getUser(); 
于 2012-05-28T21:10:27.247 に答える