2011-03-16 86 views
0

在PHP中定義用戶來自特定頁面嗎?沒有「發佈」請求。
我有一個「添加帖子」頁面。當用戶提交帖子時,在下一頁他可以提交更多信息。但是當用戶點擊瀏覽器中的「返回」時,他會返回空白的「添加帖子」表單,我需要的是用戶可以修改以前提交的信息,但只有當他從第二頁按下時纔可以。定義,該用戶來自特定頁面? (在PHP中)

$_SERVER['HTTP_REFERER'] - 似乎沒有工作。
也許我可以在第二頁上的$_SESSION中設置一些數據,然後在除了第一頁之外的其他任何頁面上設置它..但它看起來不是很聰明。

+0

@Grom S,爲什麼你不做一個編輯按鈕,返回到前一頁,但所有的表單域填寫?在進入該頁面時,您可以檢查特定的會話值,以確定它是編輯還是新提交。 – 2011-03-16 17:46:38

+0

爲什麼一個會議不是很聰明?你的情景是它的實現.. – konsolenfreddy 2011-03-16 17:55:53

+0

@尼克是的,我可以做到這一點。但是如果用戶更喜歡瀏覽器中的「返回」按鈕怎麼辦?或者也許設計不是很方便用戶。畢竟我不能確保用戶不點擊返回按鈕.. – 2011-03-16 17:58:15

回答

0

PHP $ _SESSION是一個非常好用的存儲臨時數據的簡單方法(特別是如果你不能使用$ _POST)。您只需清除一次SESSION值,而不是在每個頁面上清除。

我不是100%清楚你問的是什麼,但試着看看$ _SERVER中的其他值;他們可能有你需要的東西。

+0

我不記得另一個解決方案。不過,如果您認爲同一用戶可以在網站的不同頁面中打開多個標籤,您會明白該機制不可能100%準確。爲什麼不是使用2頁,而是爲每個步驟使用隱藏的「div」,而不是隻有1頁? – AlfaTeK 2011-03-16 17:59:28

+0

如何清除$ _SESSION一次?如果用戶來自另一個頁面,該值仍然存在。我應該在哪裏清除它? – 2011-03-16 18:16:38

+0

SESSION對於所有頁面都是一樣的。使用後立即清除它。 至於多個選項卡,我認爲隱藏的divs仍然會遭受同樣的問題。更準確的答案需要更具體的代碼。 = D – Ryre 2011-03-16 18:23:18