我的登录页面是'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>
答案 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!