如何破坏php中的session_id()?

时间:2012-11-14 07:52:06

标签: php mysql session cart shopping

  

可能重复:
  (PHP) How to destroy the session cookie correctly?

我正在用PHP购买购物车。我想过使用session_id()函数来识别各个用户。保存产品订单后,我需要销毁session_id。我该怎么做?

6 个答案:

答案 0 :(得分:2)

unset()函数用于释放指定的会话变量:

if(isset($_SESSION['id']))
{
   unset($_SESSION['id']);
}

您还可以通过调用session_destroy()函数完全破坏会话:

session_destroy();

答案 1 :(得分:0)

不确定你的意思,但这就是你破坏会话的方式

 unset( $_SESSION['id'] )

答案 2 :(得分:0)

使用session_regenerate_id()。它将更改会话ID,自动使旧的

失效

要获得良好的销毁,请在注销时使用以下内容:

session_start();
session_regenerate_id();
session_destroy();

答案 3 :(得分:0)

使用

session_regenerate_id();

代替。它将重新生成会话ID。

请在以下网址查看更多信息:http://php.net/manual/en/function.session-regenerate-id.php

答案 4 :(得分:0)

使用会话ID并不是最好的方法(尽管您可以使用session_regenerate_id()来创建新的会话ID),因为如果用户注销,您会丢失购物车的内容(例如,他将开始准备工作中的订单和我想完成它的家。)

更好,更灵活,更容易控制就是创建表格:

CREATE TABLE carts (
    `id` INT,
    `user_id` INT
)

答案 5 :(得分:0)

试一试..

page1.php中

<?php
    session_start();
    $_SESSION['userID'] = 123;
?>
<a href="logout.php">Logout</a>

logout.php

<?php
    session_start(); // start the session before using it
    session_destroy(); // delete the current session
    //$_SESSION['userID'] = 123;  // <---- NO LONGER EXISTS
    echo "Session destroyed!"; // inform the user of the changes
?>

或者你可以拥有session_destroy();使用您的代码