2013-08-16 127 views
3

我即將開發一個應用程序,讓員工在客戶所在地爲維修機器提供服務。他們需要使用平板電腦或任何其他移動設備填寫服務卡。 如果沒有互聯網連接,我正考慮使用HTML5離線存儲,主要是IndexedDB在本地存儲服務卡(Web表單)數據,並在存在Internet的辦公室進行同步。同步是與MySQL數據庫。與mysql數據庫同步indexedDB

所以問題:是否有可能將indexedDB與mysql同步?我從來沒有與indexedDB合作過,我只是在做研究,看到它是一個潛力。

Web SQL已棄用。否則,它可能是更接近的解決方案。

如果以上情況很難或超出標準,還有其他的選擇嗎?

您的意見非常感謝。

謝謝。

+0

是的。如果真正的問題是*如何*,你將不得不提供一些關於你的應用程序設計的更具體的細節... –

+0

我還沒有得到如何。我只是在尋找可能的解決方案。我擔心與mysql中的關係數據庫相比,indexeddb中的數據的對象性質不匹配或令人頭痛。任何以前的經驗,在此表示讚賞。 – blaise

回答

3

這是最初可以做到的。我只是在最近幾天纔開始學習indexeddb。這是我如何看待它的工作。抱歉沒有代碼給你。

  1. 網站知道它在離線模式下莫名其妙
  2. 點擊提交表單中的數據保存到IndexedDB的
  3. 後來的筆記本電腦或任何重新聯機或企業內部網,現在可以跟主服務器發送所有IndexedDB的行服務器通過ajax調用存儲在mysql中。
  4. IndexedDB的被清除
  5. 重複
+0

你可以很容易地從indexeddb中檢索數據,然後json編碼它將它傳遞給php,然後直接插入數據庫。 – Carlhako

+0

謝謝Carlhako。讓我告訴你我將要使用的:在線後端服務器的Django/mysql。IndexedDB用於離線存儲,我認爲這可能是一個使用tastypie創建Web服務來執行同步的解決方案。如果這是正確的選擇,或者AJAX更好,我還不確定。 – blaise

0

有點晚,但我希望它能幫助。

這是可能的,我不確定是否是最佳選擇。我可以告訴你,我正在建立一個web應用程序,我有一個mysql數據庫,應用程序必須離線工作並保持數據的跟蹤。我嘗試使用indexedDB,它對我來說非常混亂,所以我實現了DexieJs,這是一個簡單而直接的API,以簡單的方式與indexedDB通信。 現在,該應用程序在線工作,如果它停止在互聯網上,它會脫機工作,直到它獲取互聯網,然後將數據上傳到mysql數據庫。我爲了保存數據而讀取的解決方案之一是將文本字段中的json對象存儲到JSON.stringify(),並且一旦您需要數據返回JSON.parse()。 這是我的動力,以構建應用程序以這種方式,也即我們不能數據庫的改變:「是有可能與MySQL同步IndexedDB的」
IndexedDB Tutorial
Sync IndexedDB with MySQL
Connect node to mysql

+0

當我使用JSON.stringify()我有日期的問題,所以我通常避免這種方法。 – Ananda