0

私はこれに5時間取り組んでおり、知っているすべてのstackoverflowとGoogle検索項目を調べましたが、これを解決できませんでした. 私はあなたたちに助けを求めることができるかどうか疑問に思っていました.

ユーザーが Facebook にログオンして学校のキャンパス ラジオを聞くことができるようにするこの Wordpress ウィジェットを作成しています。

次のような通常の(正しいと思う)手順を実行しました。

    require_once('facebook.php');

    $facebook = new Facebook(array(
      'appId'  => 'my id',
      'secret' => 'my secret',
    ));

    // Get User ID
    $user = $facebook->getUser();

    if ($user) {
      $logoutUrl = $facebook->getLogoutUrl();
    } else {
      $loginUrl = $facebook->getLoginUrl();
    }

...そして、後でいくつかの重要でないコード行...

      window.fbAsyncInit = function() {
        FB.init({
          appId: '<?php echo $facebook->getAppID() ?>',
          cookie: true,
          xfbml: true,
          oauth: true
        });
        FB.Event.subscribe('auth.login', function(response) {
          window.location.reload();
        });
        FB.Event.subscribe('auth.logout', function(response) {
          window.location.reload();
        });
      };    

ただし、次の行で「PHP Fatal error: Call to a member function getAppID() on a non-object in...」というエラーが表示されます。

appId: '<?php echo $facebook->getAppID() ?>',

私は次のような他の行を試しました

appId: '<?php echo $this->facebook->getAppID() ?>',

appId: '<?php echo $facebook::getAppID() ?>',

appId: '<?php echo $facebook->getAppID(); ?>',

どれもうまくいきませんでした。また、これが別のエラーかどうかはわかりませんが、

$loginUrl

$logoutUrl

両方ともヌルです... :\

私は php の独学初心者です。実際、これは私が取り組んでいる最初の php プロジェクトです。この問題がこのサイトのどこにもない場合は、私が何か間違ったことをしているに違いないと確信していますが、問題は、それが何であるかわからないことです.

そうそう、私はあなたたちにそれを出すことにしました。助けてくれてありがとう!:)

4

1 に答える 1

0

行が入っている JavaScript コードは、おそらくオブジェクトのスコープ外です。$facebookJavaScript の上に次の行を追加してみてください。

global $facebook;
于 2012-06-03T13:56:47.623 に答える