0

これは単純なことかもしれませんが、私はそれを理解していません。$ userIDのチェックを行っており、存在する場合はログアウトURLを表示し、そうでない場合はログインURLを表示しますが、印刷して存在していても、userIDの条件付きチェックを常にバイパスしています。しばらく頭をぶつけてきたところですが、別の視点が役立つかもしれないと思います...

<?php
    require_once("fb_login/facebook.php");
    $facebook = new Facebook(array(
      'appId' => 'MYAPPID',
      'secret'=> 'MYSECRETID'
    ));
    $userId = $facebook->getUser();
    if ($userID) {
        echo("userID is: $userId");
        // $params = array( 'next' => 'http://localhost/bcbooks-repo/index_new.php' );

        $logoutUrl = $facebook->getLogoutUrl(); // $params is optional. 
        echo '<a href="' . $logoutUrl . '">logout</a>';
        $facebook->destroySession();
    }
    else{
        header("Location: {$loginURL}");
        $userId = $facebook->getUser();
        $accessToken = $facebook->getAccessToken();
        $params = array(
          'scope' => 'read_stream, friends_likes',
          'redirect_uri' => 'http://localhost/bcbooks-repo/index_new.php'
        );

        $loginUrl = $facebook->getLoginUrl($params);
        print_r($_SESSION);
        echo("userID is: $userId");
        echo '<a href="' . $loginUrl . '">login</a>';
    }


?>
4

1 に答える 1

0

上記の私のコメントに基づく

   $userId = $facebook->getUser();
   if ($userID) { 
    echo("userID is: $userId");
    // $params = array( 'next' => 'http://localhost/bcbooks-repo/index_new.php' );

    $logoutUrl = $facebook->getLogoutUrl(); // $params is optional. 
    echo '<a href="' . $logoutUrl . '">logout</a>';
    $facebook->destroySession();
   }

する必要があります

   $userId = $facebook->getUser();
   if ($userId) { // <- notice lowercase d
    echo("userID is: $userId");
    // $params = array( 'next' => 'http://localhost/bcbooks-repo/index_new.php' );

    $logoutUrl = $facebook->getLogoutUrl(); // $params is optional. 
    echo '<a href="' . $logoutUrl . '">logout</a>';
    $facebook->destroySession();
   }
于 2013-03-25T15:21:33.787 に答える