Witam. Chciałbym na mojej stronie mieć możliwość sprawdzenia czy użytkownik, który wchodzi na moją strone jest zalogowany na facebooku. Jeżeli jest zalogowany w danej przeglądarce to wtedy będę mógł wyświetlić odpowiednie opcje, jeżeli nie jest, to inne opcje. Jak mozna takie coś zrobić? znalazłem taki kod:
<?php
define('YOUR_APP_ID', 'idaplikacji');
define('YOUR_APP_SECRET', 'sekretny kod');
function get_facebook_cookie($app_id, $app_secret) {
if(!isset($_COOKIE['fbs_' . $app_id])){
return false;
}
$args = array();
parse_str(trim($_COOKIE['fbs_' . $app_id], '\\"'), $args);
$payload = '';
foreach ($args as $key => $value) {
if ($key != 'sig') {
$payload .= $key . '=' . $value;
}
}
if (md5($payload . $app_secret) != $args['sig']) {
return false;
}
return $args;
}
$cookie = get_facebook_cookie(YOUR_APP_ID, YOUR_APP_SECRET);
var_dump((bool) $cookie); //false jezeli nie zalogowany
if($cookie){
$user=json_decode(file_get_contents('https://graph.facebook.com/me?access_token='.$cookie['access_token']),true);
echo "Witaj $user[name]";
} else {
echo '<fb:login-button></fb:login-button>';
}
?>
Niestety on nie działa, zwraca cały czas false, mimo że jestem zalogowany. Aplikacje itp utworzyłem i wypełniłem dane. Zna ktoś moze jakąś inna metodę?
Pozdrawiam.