我的PHP的網站流量是這樣的:如何正確清除我的php會話數據?
- 有page1.php中的HTML表單POST到使page2.php這
- 使page2.php存儲所有的POST數據到SESSION變量,有一個按鈕,導致第3頁。 PHP
- Page3.php具有另一種形式職位的數據Page4.php
- Page4.php然後存儲所有的POST數據到Session變量
我的問題是,它可以b需要用戶點擊Page4.php上的後退按鈕返回到Page3.php並更改一些輸入。因爲當他們回到Page3.php時,確保你的所有人都知道,因爲整個頁面以默認狀態重新呈現,表單將是空白的。
爲了解決這個問題,並重新顯示用戶已有的輸入IM這樣做:
<input value="<?php echo $_POST["guest1Ticket"];?> " type="text" name="guest1Ticket" id="guest1Ticket" onblur="isTicketNumber(this)" size ="22"/>
這是重要的組成部分 - <?php echo $_POST["guest1Ticket"];?>
這工作,但對我產生了另一個問題。如果用戶返回Page1.php(在瀏覽器之前),並在他們到達Page3.php時再次啓動該過程,那麼他們上次運行的數據將被加載到表單中。
我想我需要做的是在用戶訪問Page1.php時清除所有的變量變量。我試着向,像這樣:
<?php
session_start();
session_unset();
session_destroy();
?>
(以上是我的文件的最頂部的第一個字符前沒有空格)
沒有警告時產生page1.php中加載但會話變量沒有被取消設置。當我到達Page3.php時,最後一次運行的數據仍然被輸入到表單中。
如何正確清除會話數據?
順便說一句我只需要這個在Chrome和那裏即時通訊測試工作。
看到這個鏈接也試過'$ _SESSION = array();'但是沒有使用變量,所以我回到上面的方法。似乎我在某處丟失了某些東西 – DelightedD0D 2013-03-19 05:44:30
我編輯了我以前的評論,爲您添加了代碼片段。所以你可以看到它是如何工作的,記住每次使用$ _SESSION時你都需要調用session_start();在那個文件中。 – Grmn 2013-03-19 05:55:35
這看起來像它應該工作,但它deosnt,這就是被每次去打印出到1個page1.php中陣列 ( [會話1] => 3 [會話2] => 2 ) woops .. 。沒有發現任何東西 – DelightedD0D 2013-03-19 06:14:16