2

親切に私のコードを一瞥してください。

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

// Create our Application instance (replace this with your appId and secret).
$facebook = new Facebook(array(
  'appId'  => 'apppID',
  'secret' => 'sercretCode',
  'cookie' =>'true'
));

?>
<!DOCTYPE html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
    <meta charset="utf-8" />
    <title>Facebook PHP</title>
</head>
<body>
<h1>Hello World</h1>
<?php
    //get user from facebook object
    $user = $facebook->getUser();

    if ($user): //check for existing user id
        echo '<p>User ID: ', $user, '</p>';
    else: //user doesn't exist
        $loginUrl = $facebook->getLoginUrl(array(
            'diplay'=>'popup',
            'redirect_uri' => 'http://apps.facebook.com/returnpath/'
        ));
        echo '<p><a href="', $loginUrl, '" target="_top">login</a></p>';
    endif; //check for user id
?>
</body>
</html>

現在、getUser()メソッドは常に0を返し、elseに入ります。ログインしても「ログイン」のようになります。何か問題があれば教えてください。私はすでにこの方法で多くの質問を見てきましたが、問題を正確に解決したものはありませんでした。私のappidと秘密鍵は正しいです。

4

2 に答える 2

0

良い!!私を含めほとんどの人は、アプリを登録したらすぐにアプリを作りたいと思っています。上記のコードに変更を加えていません。

デフォルトでは、アプリ FB へのグランド アクセスには 24 時間かかります。そのため、ユーザー ID やユーザーに関する詳細を取得することはできません。24時間お待ちください。

于 2013-03-15T15:47:04.913 に答える
0

SDK docsによると$facebook->getUser()、ユーザーがログインしていない場合、値はゼロになります。

  • そのユーザーとして facebook にログインしてから、getUser() メソッドを呼び出してみてください。
  • 'cookie' => 'true' はオプションですか? その場合は、その構成パラメーターを削除してみてください。Facebook オブジェクトが作成されていることを確認します。
  • ログをチェックして、コードがエラーを生成していないかどうかを確認します。
于 2013-03-15T08:07:45.593 に答える