我一直在試圖弄清楚這一點,現在,它正在推動我堅果。基本上我有一個美國和加拿大用戶的表格。還有的形式爲加拿大用戶,其引導用戶可以-sesssion.php,其中包含底部的鏈接:更改SESSION變量值
<?php
if (isset($_SESSION['can'])) {
session_start();
session_destroy();
session_unset();
session_start();
$_SESSION['can'] = 2;
}
else {
session_start();
$_SESSION['can'] = 1;
}
header('Location: '. $_SERVER['HTTP_REFERER'] . '');
?>
基本上,如果他們點擊鏈接,它會設置$ _SESSION [「可以」 ] = 1.現在還有另一種選擇,如果他們點擊該鏈接,它會將它們帶回到此頁面,並且會話應該被銷燬並設置一個新值(呃,這就是它應該做的)。問題是,我已經打印出$ _SESSION ['can'],並且在進入該頁面後它仍然保留了舊值。有沒有更好的方法來做到這一點,或者我的代碼有什麼問題嗎?謝謝您的幫助。
你應該知道的是,'HTTP_REFERER'是不是可以依靠被設置,或被設置爲實際的頭轉介頁。它是可選的,瀏覽器可以發送任何想要的東西。 –
有沒有更有用的選擇,還是更實用一些,只需在頁面中包含此php? –
您可以將代碼放在任何想要更改會話變量的位置。您可以根據需要多次更改,而無需將任何人發送到新頁面。 –