Не можете войти с примером php в Facebook? - PullRequest
0 голосов
/ 14 февраля 2012

Я пытался заставить это работать в течение нескольких дней и выключаться, и, кажется, не получилось с этим. что бы я ни пытался, я получаю

Вы не подключены. Публичный профиль Naitik

Я использую общий ssl, это как-то связано с этим? Я предполагаю, что это OAuth 2.0, который доставляет мне проблемы? если я пойду на https://www.facebook.com/dialog/oauth?client_id=IDNUMBER&redirect_uri=https://apps.facebook.com/... я смогу увидеть всю мою информацию но если я просто нажму на приложение на главной странице Facebook, оно скажет, что я не вошел в систему? есть идеи? Спасибо!

<code><?php


require 'src/facebook.php';

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

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


if ($user) {
  try {
    // Proceed knowing you have a logged in user who's authenticated.
    $user_profile = $facebook->api('/me');
  } catch (FacebookApiException $e) {
    error_log($e);
    $user = null;
  }
}

// Login or logout url will be needed depending on current user state.
if ($user) {
  $logoutUrl = $facebook->getLogoutUrl();
} else {
  $loginUrl = $facebook->getLoginUrl();
}

// This call will always work since we are fetching public data.
$naitik = $facebook->api('/naitik');

?>
<!doctype html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
  <head>
    <title>php-sdk</title>
    <style>
      body {
        font-family: 'Lucida Grande', Verdana, Arial, sans-serif;
      }
      h1 a {
        text-decoration: none;
        color: #3b5998;
      }
      h1 a:hover {
        text-decoration: underline;
      }
    </style>
  </head>
  <body>
    <h1>php-sdk</h1>

    <?php if ($user): ?>
      <a href="<?php echo $logoutUrl; ?>">Logout</a>
    <?php else: ?>
      <div>
        Login using OAuth 2.0 handled by the PHP SDK:
        <a href="<?php echo $loginUrl; ?>">Login with Facebook</a>
      </div>
    <?php endif ?>

    <h3>PHP Session</h3>
    <pre><?php print_r($_SESSION); ?>
<? php if ($ user):?>

Вы

image/picture">

Ваш пользовательский объект (/ me)

<?php print_r($user_profile); ?>
<? php else:?> Вы не подключены. <? php endif?>

Публичный профиль Naitik

image <? php echo $ naitik ['name']; ?>

1 Ответ

0 голосов
/ 20 мая 2012

Попробуйте добавить еще несколько разрешений, таких как read_friendlist, чтобы API выдавало исключение в операторе $fb->api('/me'), когда пользователь вышел из системы так, как вы этого хотите.Например,set

$params = array('scope' => 'read_friendlists, friends_photos');
//$facebook->getLoginUrl($params);
//$facebook->getLogoutUrl($params);
// now use these login logout urls

Вы также можете попробовать добавить $params = array('next'=> 'your-landing-page') к вашему запросу на вход в Facebook как $fb->loginUrl($params).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...