menu
ホーム > PHP と Facebook > ウェブサイト開発 > SDKs & Tools for PHP > getLoginStatusUrl ログインステータスURLの取得

getLoginStatusUrl ログインステータスURLの取得

getLoginStatusUrl ログインステータスURLの取得 SDK for PHP

概要
Facebook::getLoginStatusUrl( $params=array() )

このメソッドではFacebook上のユーザに対して、ログインステータスに基づいたURLを返します。ユーザーが「ログインしている」「ログアウトしている」「接続していない」に応じて、異なるURLを取得できます。

$params = array(
  'ok_session' => 'https://www.myapp.com/',
  'no_user' => 'https://www.myapp.com/no_user',
  'no_session' => 'https://www.myapp.com/no_session',
);

$next_url = $facebook->getLoginStatusUrl($params);

サンプルコード
以下のサンプルコードの下記3つの内容を自分の環境に合わせて書き換えて下さい。

  • YOUR_PHP_SDK_DIR_PATH(php-sdkへのパス)
  • YOUR_APP_ID (FacebookアプリケーションのID)
  • YOUR_APP_SECRET (FacebookアプリケーションのSECRET)

FacebookアプリケーションID等が不明な場合は、こちらを参照下さい。php-sdkの設置やFacebookアプリケーションの作成など一通り説明されています。

<?php
  // Remember to copy files from the SDK's src/ directory to a
  // directory in your application on the server, such as php-sdk/
  // require_once('php-sdk/facebook.php');
  require_once('YOUR_PHP_SDK_DIR_PATH');

  $config = array(
    'appId' => 'YOUR_APP_ID',
    'secret' => 'YOUR_APP_SECRET',
  );

  $facebook = new Facebook($config);
  $user_id = $facebook->getUser();
?>
<html>
  <head></head>
  <body>

  <?php
    if($user_id) {

      // We have a user ID, so probably a logged in user.
      // If not, we'll get an exception, which we handle below.
      try {

        $user_profile = $facebook->api('/me','GET');
        echo "Name: " . $user_profile['name'] . "<br/>\n";

      } catch(FacebookApiException $e) {
        // If the user is logged out, you can have a 
        // user ID even though the access token is invalid.
        // In this case, we'll get an exception, so we'll
        // just ask the user to login again here.
        $login_url = $facebook->getLoginUrl(); 
        echo 'Please <a href="' . $login_url . '">login.</a>';
        error_log($e->getType());
        error_log($e->getMessage());

      }

    } else {

        $params = array(
          'ok_session' => 'http://wepicks.net/code-example/facebook/getLoginStatusUrl.php',
          'no_user' => 'http://wepicks.net/code-example/facebook/getLoginStatusUrl_nouser.php',
          'no_session' => 'http://wepicks.net/code-example/facebook/getLoginStatusUrl_nosession.php',
        );

        $next_url = $facebook->getLoginStatusUrl($params);
        echo 'Please <a href="' . $next_url . '">login.</a><br/>';

      // No user, print a link for the user to login
      $login_url = $facebook->getLoginUrl();
      echo 'Please <a href="' . $login_url . '">login.</a>';

    }

  ?>

  </body>
</html>

– サンプル Click Here ! –


タグ(=記事関連ワード)

タグ:

日付

投稿日:2013年1月31日
最終更新日:2013年03月11日

関連記事

このカテゴリの他のページ

この記事へのコメント

トラックバックurl

http://wepicks.net/facebooksdk-getloginstatusurl/trackback/

page top