【发布时间】:2013-05-16 10:08:23
【问题描述】:
我想在不重新加载页面的情况下注销用户,只需更新一些 div。这就是我所拥有的,但显然没有工作。只有在重新加载页面后会话才会取消。
$.ajax({
url: "logout.php",
method: "post",
data: "account_type=twitter",
success: function () {
/*****do something***********/
}
});
在logout.php中
<?php
session_start();
if(isset($_POST['account_type']) && $_POST['account_type'] == "twitter") {
unset($_SESSION['twitterId']);
unset($_SESSION['twitterName']);
unset($_SESSION['twitterPic']);
unset($_SESSION['twitterUrl']);
unset($_SESSION['access_token']);
unset($_SESSION['token_oauth']);
header("Location: index.php");
}
?>
我们将不胜感激。谢谢!
【问题讨论】:
-
什么意思(只有在重新加载页面后会话才会取消。)??我认为会话已经未设置,但没有什么可以告诉当前页面您已经注销。是这样吗??
-
注销不会更改页面上已有的内容。您将需要重新加载页面以显示新内容 IE 旧登录内容仍将显示,因为它不会自动更改,因为您已使用 ajax 注销,除非您当然要重新加载所有未记录内容的 div也使用 ajax。
-
@Anigel 你的意思是如果我动态地重新加载包含条件的div(如果设置了seession)这会起作用吗?我试试看!
-
基本上是的。在您重新加载内容之前,它仍然会一直说您已登录。仅注销不会更改页面上的任何内容,除非您重新加载页面或要更新的内容。
-
现在可以使用了。谢谢!