我已經爲每個頁面構建了一個複雜的多頁面Web調查,其中包含多個「條件」(問題變體)。每頁提交後,一個單獨的文件處理數據並將其插入數據庫,然後用戶通過redir.php
隨機地指向下一個問題的一個條件。這種結構的一個問題是,如果用戶導航回到提交的頁面並重新提交,則將新行插入到數據庫中,並且再次調用隨機重定向,導致用戶處於(可能)不同的狀態。例如,問題3有六個條件(AF),例如,如果某人完成問題2並被導向3B,然後回到問題2並重新提交該頁面,則他們將落在3A-3F中的任何一個上(大多數可能與引薦者的條件不同)。如果用戶已經提交頁面,顯示錯誤消息,然後重定向到頁面
我希望能夠檢查用戶是否已經提交了他們的回覆,如果是,請向他們顯示一條錯誤消息(沿着「Page already submitted。Redirecting ...」的行),然後重定向到他們查看的最後一頁。我已經廣泛地尋找解決方案,但沒有找到可以處理多個頁面條件和隨機化的解決方案。最好的辦法是什麼 - 在每個頁面上包含數據庫查詢以檢查記錄是否已經存在?使用會話變量?