Skip to content

Instantly share code, notes, and snippets.

@andrewshulgin
Last active August 26, 2016 16:02
Show Gist options
  • Save andrewshulgin/f87c14feff83202b0ad5 to your computer and use it in GitHub Desktop.
Save andrewshulgin/f87c14feff83202b0ad5 to your computer and use it in GitHub Desktop.
<html>
<body>
<?php
$APP_ID = '';
$APP_SECRET = '';
$REDIRECT_URL = 'http://' . $_SERVER['HTTP_HOST'] . '/';
set_include_path('facebook-php-sdk');
require_once 'autoload.php';
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
function getData($session, $node) {
$request = new FacebookRequest($session, 'GET', $node);
$response = $request->execute();
return $response->getGraphObject()->asArray();
}
session_start();
FacebookSession::setDefaultApplication($APP_ID, $APP_SECRET);
FacebookSession::enableAppSecretProof();
$helper = new FacebookRedirectLoginHelper($REDIRECT_URL);
if (isset($_GET['code'])) {
$session = $helper->getSessionFromRedirect();
$_SESSION['token'] = $session->getAccessToken();
header('Location: ' . $REDIRECT_URL);
}
if (isset($_SESSION['token'])) {
$session = new FacebookSession($_SESSION['token']);
echo <<<EOD
<ul>
<li><a href="#me">/me</a></li>
<li><a href="#links">/me/links</a></li>
<li><a href="#posts">/me/posts</a></li>
<li><a href="#friends">/me/friends</a></li>
<li><a href="#likes">/me/likes</a></li>
<li><a href="#groups">/me/groups</a></li>
</ul>
EOD;
echo '<h1 id="me"><a href="#me">/me</a></h1>';
// Информация о пользователе
echo '<pre>' . print_r(getData($session, '/me'), 1) . '</pre>';
echo '<h4><a href="#top">Top</a></h4>';
echo '<h1 id="links"><a href="#links">/me/links</a></h1>';
// Ссылки в постах юзера
echo '<pre>' . print_r(getData($session, '/me/links'), 1) . '</pre>';
echo '<h4><a href="#top">Top</a></h4>';
echo '<h1 id="posts"><a href="#posts">/me/posts</a></h1>';
// Посты юзера
echo '<pre>' . print_r(getData($session, '/me/posts'), 1) . '</pre>';
echo '<h4><a href="#top">Top</a></h4>';
echo '<h1 id="friends"><a href="#friends">/me/friends</a></h1>';
// Друзья юзера
echo '<pre>' . print_r(getData($session, '/me/friends'), 1) . '</pre>';
echo '<h4><a href="#top">Top</a></h4>';
echo '<h1 id="likes"><a href="#likes">/me/likes</a></h1>';
// Лайки юзера
echo '<pre>' . print_r(getData($session, '/me/likes'), 1) . '</pre>';
echo '<h4><a href="#top">Top</a></h4>';
echo '<h1 id="groups"><a href="#groups">/me/groups</a></h1>';
// Группы, в которых юзер состоит
echo '<pre>' . print_r(getData($session, '/me/groups'), 1) . '</pre>';
echo '<h4><a href="#top">Top</a></h4>';
} else {
$loginUrl = $helper->getLoginUrl(
array('scope' => 'user_friends,email,user_groups,user_likes,read_stream')
);
echo '<a href="' . $loginUrl . '">Login</a>';
}
?>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment