2013-03-20 36 views
1

我正在做一個4步的註冊表單,最後會將用戶重定向到PayPal並將整個表單內容輸入到數據庫中。3步POST表單。使用會話,隱藏字段或...?

目前我有以下流程:

頁1 - 輸入詳細 點擊Submit(POST)

頁2 - 檢查第1頁詳細 第2頁 - 把細節到$ _SESSION 第2頁 - 輸入更多的細節 點擊提交(POST)

頁3 - 檢查第2個細節 第3頁 - 把細節到$ _SESSION 第3頁 - 輸入更多詳情 點擊提交(POST)

頁4 - 檢查第3個細節 頁4 - 所有的數據並投入DB 頁4 - 重定向到貝寶 頁4 - 以dB爲單位設定標記爲活動之前,聽到成功 DONE

我的問題是,我正在以正確的方式進行?雖然它工作正常,但我不得不使用jquery hack來讓用戶在任何階段返回以更改表單。

我正在考慮使用隱藏字段而不是SESSIONS,以便每一步都會重新提交所有數據,並且如果用戶想要返回一個步驟,我可以將所有數據返回到前一頁。我認爲用戶可能以這種方式丟失數據的可能性更大?

+0

我喜歡會話比隱藏的領域,因爲它更安全和乾淨 – 2013-03-20 08:32:58

+0

只是一個凹凸。你有沒有找到好的解決方案?我正在考慮可能會做一個函數,將所有先前的後置字段自動隱藏在表單中,以便在添加更多字段時更容易管理(可以爲會話創建),因爲我有一個「可選步驟「這是一個登錄屏幕,如果沒有登錄它可以使用相同的處理後的天氣或沒有登錄。 – 2013-05-18 21:50:21

回答

2

隱藏字段的概念會使事情難以管理......如果字段的數量更多。

它更好地使用會話在你的情況,而不是隱藏的領域。

0

這取決於:每個步驟之後您是否需要執行POST?如果沒有,你可以在頁面中放置所有步驟,每個步驟都在一個字段集中,並且每次只顯示一個字段(在javascript中)(正如你談論的jQuery)。這種方式僅提交的最後一步按鈕,將提交整個表單

在另一方面,如果你需要在每個步驟後的帖子,我會選擇會議的做法,這是更安全的

+0

我認爲我對jquery的有限知識阻止了我將表單全部放在一個頁面上。主要原因是第2頁顯示了頁面1的格式化預覽,以及我編寫的用於格式化數據的許多函數,我不知道如何在JQuery中編寫代碼。 – James 2013-03-20 08:55:39