dsam70528 2012-09-12 09:33
浏览 76
已采纳

注销后,Facebook php sdk返回用户ID

Hello I am using latest facebook php sdk for my app. I am getting issue with its logout. here is my code for logout.

<?php
$logout = $facebook->getLogoutUrl(array(
  'next' => 'https://www.thevoucherlink.com/logout.php'));
?>

And this is my logout.php:

<?php
session_start();
unset($_SESSION['fb_uid']);
session_destroy();
header('location:https://www.thevoucherlink.com/index.php?ref=logout');
?>

After log out user log outs from facebook. But not from my app.

$user_id=$facebook->getUser();

This function returns the user id after log out.

Please help me to solve it. Thanks in advance.

  • 写回答

3条回答 默认 最新

  • dsjbest2014 2012-09-12 09:39
    关注

    try removing FB cookie along with unsetting session, like:

    session_start();
    $fb_key = 'fbs_'."YOUR_FB_APP_ID";
    setcookie($fb_key, '', time() - 3600, '', '/', '');
    unset($_SESSION['fb_uid']);
    session_destroy();
    

    Then you can try doing try..catch block, something like:

    $userId = $facebook->getUser();
    try {
       $myDetails = $facebook->api('/me');
       //will return details if still loggedin
    } catch (Exception $e) {
       //user has already logged out
    }
    

    Edited:: in your logout.php, try doing:

    $facebook = new Facebook(array('appId' => 'your_id', 'secret' => 'your_secret'));
    //destroy the session
    $facebook->destroySession();
    

    Hope that helps

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?