oauth с фейсбуком - PullRequest
       6

oauth с фейсбуком

0 голосов
/ 20 марта 2012

Я пытаюсь получить информацию, если пользователь вошел в Facebook, если да, то мне нужно сохранить его фотографию, URL-адрес, имя в моей базе данных, чтобы пользователи могли оставлять комментарии в моем веб-приложении.

Я не могу этого сделать, я создал приложение facebook для веб-сайта и использовал следующий код для аутентификации. Но он показывает «Произошла ошибка. Пожалуйста, попробуйте позже.»

Кто-нибудь, пожалуйста, помогите мне? или помочь мне с рабочим кодом?

<?php
require_once('../src/facebook.php');

$fb_app_id = "key";
$fb_secret = "secret";
$fb_app_url = "url";
$facebook = new Facebook(array(
    'appId'  => $fb_app_id,
    'secret' => $fb_secret,
    'cookie' => true,
));

$user = $facebook->getUser();

if ($user) {
  // The user is logged in
  try {
    $user_profile = $facebook->api('/me');
    // Here : API call succeeded, you have a valid access token
  } catch (FacebookApiException $e) {
    // Here : API call failed, you don't have a valid access token
    // you have to send him to $facebook->getLoginUrl()
    $user = null;
  }
} // else : the user is not logged in


?>



<?php if ($user): ?>
    <a href="<?php echo $facebook->getLogoutUrl() ?>">Logout of Facebook</a>
<?php else: ?>
    <a href="<?php echo $facebook->getLoginUrl() ?>">Login with Facebook</a>
<?php endif ?>

1 Ответ

1 голос
/ 20 марта 2012

Вы можете попробовать это

require_once('../src/facebook.php');
$facebook = new Facebook(array(
  'appId'  => 'xxxxxxxxxxxx',
  'secret' => 'xxxxxxxxxxxx',
  'cookie' => true,
));

$fb_user_id = $facebook->getUser();

try 
{
$fb_user_profile = $facebook->api('/me');   
$me  = $facebook->api('/me');
}
catch (FacebookApiException $e) 
{

$fb_user_id = NULL;
}
$fbid = $me['id']; 
$firstname = $me["first_name"];
$lastname =  $me["last_name"];
$gender = $me["gender"];
$email = $me["email"];

if ($facebook->getSession()) {
  echo '<div id="fbc-img"><img src="http://graph.facebook.com/'.$me['id'].'/picture?type=normal" width="56" height="56"></div>
  <div id="fbc-info">Welkom, '.$firstname.' ! <br><a href="' . $facebook->getLogoutUrl() . '">Logout </a></div> ';

} else {
  echo '<a href="https://www.facebook.com/dialog/oauth?client_id=YOUR_APP_ID&redirect_uri=YOUR_WEBSITE&scope=email" target="_blank">Login met facebook</a> ';
}
...