从facebook会话中退出

时间:2013-11-07 12:28:38

标签: php facebook session

我的登录页面是'login.php',如果他成功通过身份验证,则新页面会重定向,即star.php

我想在start.php上保留注销按钮。如果用户没有点击它,会话应在15分钟后终止。我试过这里:

    <input type="button" value="logout" onclick="setTimeout();" />

<script>
        var userid;
            FB.init({
            appId: '178812',
            xfbml: true,
            status: true,
            cookie: true,
            });
            FB.getLoginStatus(checkLoginStatus);
        function setTimeout()
        {

            FB.logout(function(response) 
            {
            // user is now logged out
            alert("hi");
            });
        }
 </script>

按钮点击说:

ReferenceError: FB is not defined


FB.logout(function(response)

我还希望用户关闭浏览器会话时终止。

我不知道是否有必要在start.php上再次加载JS SDK

更新

页码:

<?php
    $user_id = $_POST['userid'];
?>
<html>
    <head>
        <script src = "http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type = "text/javascript"></script>

    </head>

    <body>
        <div class = "right"><td style = "width:30%"> <input type="button" value="logout" onclick="setTimeout();" /></td>
        </div>          
    </body> 
    <script>
        var userid;
            FB.init({
            appId: '178812232292862',
            xfbml: true,
            status: true,
            cookie: true,
            });
            FB.getLoginStatus(checkLoginStatus);
        function setTimeout()
        {

            FB.logout(function(response) 
            {
            // user is now logged out
            alert("hi");
            });
        }


    </script>

</html>

1 个答案:

答案 0 :(得分:1)

您尚未加入SJ SDK

添加

<div id="fb-root"></div>
<script>
  (function(d, s, id){
     var js, fjs = d.getElementsByTagName(s)[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement(s); js.id = id;
     js.src = "//connect.facebook.net/en_US/all.js";
     fjs.parentNode.insertBefore(js, fjs);
   }(document, 'script', 'facebook-jssdk'));
</script> 

由于你包括jQuery我建议:

 $('#logout').click(function () {

     FB.logout(function (response) {
         // user is now logged out
         console.log('Logging You out, Bye Bye!');
       })
 });

它应该有效Example!