2011-01-19 21 views
1

我創建了一個瀏覽器解決方案,需要將相當多的數據存儲到cookie中。 我們在談論1000多個切入點。不幸的是,如果涉及到 cookie保存(即,每個域的Firefox 3 Mac OS 10.6.6 = 150參數),大多數瀏覽器都有侷限性。如何爲所有瀏覽器存儲無限量的Cookie條目

我也將數據存儲在MySQL數據庫中,用戶點擊保存按鈕後,他真的想保持這些數據的持久性。

我這樣設計的原因是: A.瀏覽器碰撞保護系統就位,或者用戶關閉窗口/標籤 B.用戶回到同一頁面很方便並繼續在他的項目上工作

請讓我知道你的想法或建議。

非常感謝!

PS:沒有ADS kiddie反應!

+0

我想你會使用Javascript來不時地在本地存儲這些值? 您是否考慮將它們發送到服務器,並將它們標記爲「草稿」? – 2011-01-19 22:07:19

+0

AJAX - > SESSION | DB – zzzzBov 2011-01-19 22:25:44

回答

4

「如何爲所有瀏覽器存儲無限量的Cookie條目?」

你不能。

相反,您應該使用AJAX定期將用戶迄今輸入的數據保存到數據庫的「臨時」表中。

堆棧溢出實際上有東西類似當你寫答案。你可以開始寫答案,然後刷新頁面,你的答案會回來。


您可以存儲一個cookie,告訴您用戶存儲了臨時數據。

如果用戶的瀏覽器崩潰,當他們重新打開該頁面時,查找此cookie。 如果它存在並且它具有正確的值,那麼當您提供頁面時,使用保存的數據填充表單域。

讓用戶知道您已經完成了這項工作,並讓他們可以選擇如果他們願意再次啓動。


另一個選項,你可以使用Adobe Flash是將數據存儲在一個LSO(本地共享對象):

默認情況下,Flash應用程序可能 最多存儲數據的100KB到用戶的 硬盤。

這可能將是足夠的空間,讓您(如果沒有,爲什麼你想保存我的整個論文客戶端?),前提是你能接受的Flash作爲一項要求是能夠恢復的形式數據。

+0

請注意「默認情況下」警告三十四引號。我在閃光燈設置中設置了只有10 KB的限制。 http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager03.html – 2011-01-19 22:42:04

1

我看到的針對您的問題的最簡單的解決方案是在持久性 Cookie中只存儲一個uniqueID/GUID,您將在該數據庫中將它用作鍵。使用這個鍵,你可以輕鬆地將AJAX請求發送到一個web服務,例如它將直接在後臺數據庫中管理你的數據。沒有數據會丟失+它對用戶來說是透明的。

相關問題