1

$_SESSION['ProdID'] = $ProdID;在代码的前面开始了一个会话,并在脚本的另一个页面中启动了另一个 ProdID 会话。

我想结束第一个,而这个新的将在不注销的情况下处于活动状态。

4

6 回答 6

2

使用您想要的任何名称创建一个页面。例如,您创建一个名为 logout.php 的页面并将此代码粘贴到其中。

<?php
    session_start();    
    session_destroy();
    header('location:login_page.php');
?>
于 2012-10-23T10:12:19.920 回答
1

首先通过重新生成新的会话 ID来销毁当前会话以创建新的 cookie。然后您可以在新会话中设置您的值,旧会话被销毁。如果您不再需要它们,可以选择删除所有旧会话变量:

/* generate new session id and delete old session in store */
session_regenerate_id(true);

/* optional: unset old session variables */
$_SESSION = array();

/* set new value(s) */
$_SESSION['name'] = 'value';

如果您仍想保留旧会话(“不注销”),您可以删除该true参数,以便将旧会话保留在存储中:

/* generate new session id and keep old session in store */
session_regenerate_id();

其余的将保持不变。

于 2012-10-23T09:51:07.957 回答
1

如果要销毁所有会话,最好使用 session_destroy()

如果要销毁特定会话,可以使用 unset($_SESSION['']);

于 2012-10-23T09:49:36.413 回答
0

尝试使用 session_destroy(); 结束当前会话。

于 2012-10-23T09:47:33.013 回答
0

只键入代码的未设置会话结束,像这样

unset($_SESSION['ProdID']);
于 2012-10-23T09:47:43.297 回答
0

利用

unset($_SESSION["ProdID"]);
于 2012-10-23T09:55:43.540 回答