2013-12-20 30 views
1

我正在構建一個網絡應用程序,基本上在第一階段預訂東西。 我計劃完成4/5步驟的預訂。首先,檢查設備是否準備好,第二次看到設備的分配,第三次獲得客戶信息,第四次付款信息。應該在哪裏存儲數據?會話變量或隱藏字段?

我只想知道數據如何存儲到我們將所有數據存儲在數據庫中的最後一頁。到那時,如何將數據從一個頁面移動到另一個頁面。

哪種技術最好? 如果有任何其他技術來存儲頁面之間的信息,請我需要知道我的項目。 我還需要保護這些信息免遭黑客入侵。

我使用PHP和框架是笨

+2

''字段不能保存數據。當表單被提交時,他們發送數據到服務器,如果你沒有堅持下去,它就會消失。然而會話是跨請求維護的(除非另有配置)。 –

回答

2

主要基於意見,但各有利弊。

存儲在$ _SESSION:

  • 臨:允許你保存你不一定要還擊給用戶,即私人數據:無論是應用程序內部的數據,或應將而不是的用戶私人數據返回到頁面,例如信用卡詳細信息,密碼和其他個人信息。
  • Con:會話將在配置的超時後失效,用戶將失去工作。

存儲在隱藏字段:

  • 基本上扭轉利弊$ _SESSION。
  • 恕我直言,使用像這樣的隱藏領域是一個巨大的kludge。

理想的方法是使用custom session handler以會話過期時不會丟失的方式存儲會話數據。

1

如果你正在構建一個多形式,我將存儲在一個MySQL數據庫中的每個部分的信息,這將使最終用戶能夠保存,稍後再回來的能力因爲會話將過期。

+0

Sesion不會過期,直到瀏覽器關閉。不是嗎?你的意思是將每個頁面表單保存在數據庫中? – atomaprchya

+1

這一切都取決於會議屆滿。無論是哪一種情況,對於一個小型站點來說,存儲在mySQL中都可以,但是並不能很好地擴展 - 在memcache中放置$ _SESSION並且很少將memcached會話數據刷新到mySQL以避免瓶頸。 – Ross

+0

會話到期通常默認爲1440秒或24分鐘不活動,即用戶在頁面打開時進入AFK。所以如果他們填寫4頁信息中的3頁,如果全部存儲在$ _SESSION var中,然後他們的孩子開始戰鬥或者其他任何事情,並且他們被拉走30分鐘,那麼除非服務器已經被配置除此以外。 – JustinM151

1

使用會話。隱藏字段可以通過Google開發工具或Firebug或任何其他工具進行修改並向用戶公開。所以最好使用會話。

+0

通過服務器保護這些數據的安全措施是什麼? – atomaprchya