0
嘗試臨時存儲多頁註冊中的信息。因爲我不希望舊會話混淆新註冊數據,我試圖銷燬舊會話。問題是以下。會話失敗()+ session_start()不在頭重定向後
不工作:
signup1.php
//Start new session
session_regenerate_id(TRUE);
session_destroy();
unset($_SESSION);
session_start();
//Store values in session
$_SESSION['created'] = time();
//Redirect to second step
header('Location: '.$settings->siteurl.'signup2.php');
exit();
signup2.php
<pre>
<?php
//Print $_SESSION (empty array)
print_r($_SESSION);
?>
工作(但返回舊的$ _SESSION值+更新的值):
//Start new session
session_regenerate_id(TRUE);
//Store values in session
$_SESSION['created'] = time();
//Redirect to second step
header('Location: '.$settings->siteurl.'signup2.php');
exit();
什麼可以解決問題?第一個session_start();在init.php中設置,但是如果將它放在session_regenerate_id(TRUE)之上,則無關緊要,數組保持爲空。
謝謝!但是,如何重置用戶的會話數據,以便所有值都是新的/清除的? – Hidde
你想破壞會話,完全是數據嗎? –
是的。假設用戶已經提交了一次該表單,並且已將該值放入會話中,並且已被重定向到第2頁,如果他在第1頁上再次提交表單,我希望它們被清除。 – Hidde