如何在用户转到另一个页面后销毁会话?

时间:2014-07-13 10:30:44

标签: php

如何在用户转到其他页面后销毁会话!?

我创建一个提供user1名称的搜索表单,在此之后我打开一个会话,它给我数据 问题是当我在同一页面中搜索另一个用户时,用户2没有的数据,它从user1获取 我想在开始新搜索时删除最后一个会话!或者当我到另一页时??

2 个答案:

答案 0 :(得分:0)

有可能在PHP中使用session_destroy()函数,但通常建议使用 ,因为调用session_destroy()会破坏所有会话数据,而不仅仅是那些你想要被摧毁。

答案 1 :(得分:0)

如果你想在每个页面加载时销毁会话,并启动它,你需要销毁会话然后再次启动它。请参阅session_destroy,此代码段摘自PHP文档。您可以使用register_shutdown_function来调用最后一个

register_shutdown_function(function() {
  if(session_status() === PHP_SESSION_NONE) {
    session_start();
  }
  $_SESSION = array();
  if (ini_get("session.use_cookies")) {
    $params = session_get_cookie_params();
   setcookie(session_name(), '', time() - 42000,
     $params["path"], $params["domain"],
     $params["secure"], $params["httponly"]
    );
  }
  session_destroy();
});