2014-12-03 38 views
0

我有一個PHP排班應用,其中流程是:歡迎頁>時間表頁>實際進度頁GET/POST沒有瀏覽器歷史記錄

名單上實際時間表頁面的用戶可以做的事情(如添加的轉變,刪除一個班次,請求一個班次),所有這些都回到相同的實際時間表頁面。我想要的是,當他們點擊各種「事物」時,「事物」不會添加到瀏覽器歷史記錄中。所以,如果他們點擊瀏覽器的後退按鈕,他們只需轉到「時間表列表」頁面。

我遇到的問題是您可以添加班次A,然後添加班次B,然後單擊回來,然後再嘗試添加班次A.

這通常如何避免?我能做什麼?

+0

您是否嘗試過使用AJAX形式帖子? – Jhecht 2014-12-03 01:37:18

+0

目前,我沒有用大多數東西的形式。它們的URL鏈接格式如page.php?week = 1130&do = function – KPK 2014-12-03 01:39:04

+1

AJAX窗體+操作瀏覽器歷史記錄。 https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history#Adding_and_modifying_history_entries – kittyminky 2014-12-03 01:41:48

回答

1

郵政/重定向/獲取:
http://en.wikipedia.org/wiki/Post/Redirect/Get

另一個(老款)的選擇是:
$_POST的數據文件中的用戶不會去,如post_processing.php。
在該腳本中,處理其請求處理,根據需要進行更改,然後將標題重定向回到計劃頁面。

顯然,正確處理人試圖訪問文件直接等

2

只需返回302從POST處理程序重定向到頁面而不是呈現它。