【发布时间】:2012-01-28 08:10:46
【问题描述】:
我正在开发一个在线订票系统,在成功预订后(付款后)我想清除会话 ID。但问题是我无法清除它,尽管我使用了session_destroy() 来破坏会话。
注意:我已经回显了 session_id 以检查它是否重置。
网址:http://7sisters.in/7sislabs/
function book_final_tickets()
{
//var_dump($_SESSION);
$session_id = session_id();
$sql = "
UPDATE
tbl_seat_book
SET
final_book = 'Y'
WHERE
session_id = '$session_id'
";
//session_unset();
if($r = $this->db->executeQuery($sql)){
if(session_destroy()){
unset($session_id);
echo 'Booking successfull';
}
}
}
【问题讨论】:
-
你的查询已经执行,并且打印了 echo 语句?
-
是的...但是我想在成功订票后销毁会话。
-
如果您的 echo 语句被打印,那么您的会话应该已经被销毁。尝试调试为什么会发生这种情况。
-
回显显示相同的 session_id ,尽管它已被销毁(成功预订后)
-
尝试使用
session_unset()。另外,尝试在session_destroy()之前调用session_start()。