可能重複:
(PHP) How to destroy the session cookie correctly?如何在php中銷燬session_id()?
我做在PHP購物車。我想過使用session_id()函數來識別單個用戶。保存產品訂單後,我需要銷燬session_id。我將如何做到這一點?
可能重複:
(PHP) How to destroy the session cookie correctly?如何在php中銷燬session_id()?
我做在PHP購物車。我想過使用session_id()函數來識別單個用戶。保存產品訂單後,我需要銷燬session_id。我將如何做到這一點?
你不要說不清楚是什麼,但是這是你如何摧毀一個會話
unset($_SESSION['id'])
謝謝你的直接回應。 我使用以下語句爲會話生成唯一的ID。 $ sid = session_id(); 我需要在將訂單保存到數據庫後銷燬$ sid中的值。 – tanuja90
使用session_regenerate_id()
。它將改變會話ID,將自動失效舊
對於一個良好的破壞,使用上登出了以下內容:
session_start();
session_regenerate_id();
session_destroy();
謝謝你的迴應。讓我試試看。:) – tanuja90
使用
session_regenerate_id();
代替。它將重新生成會話ID。
的詳細信息請參閱:http://php.net/manual/en/function.session-regenerate-id.php
使用會話ID不是去(雖然你可以使用session_regenerate_id()
創建新的會話ID),因爲你失去的車的內容,如果用戶註銷(例如最好的方式,他將開始準備工作秩序,並希望完成它回家)。
好多了,靈活,更容易控制將創建表:
CREATE TABLE carts (
`id` INT,
`user_id` INT
)
的unset()
功能是用來釋放指定的session變量:
if(isset($_SESSION['id']))
{
unset($_SESSION['id']);
}
您也可以徹底摧毀會議通過呼叫session_destroy()
功能:
session_destroy();
試試這個..
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();與您的代碼
如果我正確理解您的問題,您使用會話ID作爲您的數據庫中的鍵?如果是這樣,這可能是一個壞主意(tm) –
您的標題中是否存在拼寫錯誤?什麼''session_id()'' –