在Javascript中取消设置会话

时间:2009-11-30 00:57:22

标签: javascript

有谁知道我可以在javascript中重置/删除php的会话吗?

5 个答案:

答案 0 :(得分:2)

在Client / JS端没有“session”的概念 - 它是服务器端的构造/状态。

当然,如果您愿意,可以将指示发送回服务器:您可以使用AJAX来执行此操作。

答案 1 :(得分:2)

请记住,在下载页面后,Javascript在客户端上运行。会话数据仅存在于服务器上。因此,Javascript(在客户端上)无法触及会话数据(在服务器上)。您必须与服务器端PHP脚本进行通信以处理会话数据。您可以通过Javascript对PHP脚本进行异步调用。这将是唯一的途径。

使用jQuery的示例

$("a.signOut").click(function(){
  $.post("signout.php", {}, function(){
    alert("You've been logged out.");
  });
});

答案 2 :(得分:0)

会话管理特定于服务器端环境。为了操作服务器端会话,您需要向服务器发出请求。如果你需要异步(通过javascript),那么你总是可以使用AJAX请求,允许客户端环境(用户的浏览器)和服务器端环境之间的异步通信。

答案 3 :(得分:0)

PHP将在服务器端存储会话信息,但使用HTTP cookie(浏览器负责在每个请求上发回)作为服务器端状态的“句柄”。因此,如果您只想完全清除会话(以便在下一个请求中PHP将启动一个新会话),您可以使用JavaScript中的document.cookie对象直接操作cookie。

彼得 - 保罗科赫的eraseCookie() function可能是最简单的方法。

答案 4 :(得分:0)

您可以通过发布到其他页面来取消设置会话

$.ajax("/unset_data.php", {"cache":false});