0

php-sdk 3の最新バージョンを使用しました

<?php

    try{
        include_once "connect.php";
    }

    catch(Exception $o){
        echo '<pre>';
        print_r($o);
        echo '</pre>';
    }

   if (isset($_GET['code'])){
        header("Location: " . $appsurl);
        exit;
    }
    //~~

    //
    if (isset($_GET['request_ids'])){
        //user comes from invitation
        //track them if you need
    }

    $user            =   null; //facebook user uid
    try{
        include_once "facebook.php";
    }
    catch(Exception $o){
        echo '<pre>';
        print_r($o);
        echo '</pre>';
    }
    // Create our Application instance.
    $facebook = new Facebook(array(
      'appId'  => $fbconfig['appid'],
      'secret' => $fbconfig['secret'],
      'cookie' => true,
    ));

    //Facebook Authentication part
    $uid       = $facebook->getUser();


    $loginUrl   = $facebook->getLoginUrl(
            array(
                'scope'         => 'publish_stream'
            )
    );

    if ($uid) {
      try {
        // Proceed knowing you have a logged in user who's authenticated.
        $user_profile = $facebook->api('/me');
      } catch (FacebookApiException $e) {
        //you should use error_log($e); instead of printing the info on browser
        d($e);  // d is a debug function defined at the end of this file
        $user = null;
      }
    }

    if (!$uid) {
        echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>";
        exit;
    }

    //get user basic description
    $userInfo           = $facebook->api("/$uid");

    function d($d){
        echo '<pre>';
        print_r($d);
        echo '</pre>';
    }
?>

アプリケーション(アプリに移動)を許可し、ウォールへの投稿を許可します。

ウォールへの投稿を許可すると、アプリケーションの URL ($appsurl) がリダイレクトされなくなります。次のように表示されます。

https://[hostingurl]/?state=7f76eb2ad732398827215d86f946a690&code=AQBZ2nsbbs3lfBSBwr_HzFpcKIIZlfjAijl9db7wyn1xEIZ4-W7BqQbFtnVZ8UM_4nQ9qIk57msjw6RlLb6VQqGrF3nupBFoEmrypAPmftAsS4ILW9LEJA5gzTMb2VJhwBHHqSpwGHUbh98bNQQQxkX50Ns5kVaffUUylXrIgy6MQcLxU66hQS7qMImHg5Mi2tUrpPqlWbZNQzlooMkv1WAt#_=_

indexpage でもリダイレクト コードを試しました。

if (isset($_GET['code'])){
        header("Location: " . $appsurl);
        exit;
    }

しかし、リダイレクトは行われません。

手伝っていただけませんか?

4

1 に答える 1

1

これを試して:

$loginUrl   = $facebook->getLoginUrl(
            array(
                'scope'         => 'publish_stream',
                'redirect_uri'  => 'https://apps.facebook.com/yourNameSpace'
            )
    );
于 2012-10-27T18:51:11.843 に答える