簡體   English   中英

我們可以在PHP中使用Web SQL本地數據庫嗎?

[英]Can we use web SQL local database with PHP?

我正在使用帶有JavaScript的Web SQL本地數據庫創建一個脫機應用程序。

當那時Internet無法連接時,所有條目都將插入本地數據庫Web SQL中。

但是,當我連接到Internet時,Web SQL本地數據庫將與實時數據庫同步,並且將自動插入實時數據庫中不可用的本地數據庫新條目。

稍后,該應用程序將部署在Phonegap中。

這是本地數據庫的代碼(SQL事務)

打開數據庫:

var db = openDatabase('retaurant', '1.0', 'Test DB', 2 * 1024 * 1024);

新建表並將數據插入表:

var username = "Test";
var password = "test";
db.transaction(function (tx) {
    tx.executeSql('CREATE TABLE IF NOT EXISTS user (id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT , username,password)');
    tx.executeSql('INSERT INTO user (username,password) VALUES ("'+username+'","'+password+'")');
});

從數據庫中刪除條目

db.transaction(function (tx) {
     tx.executeSql("DELETE FROM user WHERE id=?", [id],
     function (tx, results) {    });
});

此代碼是本地代碼,現在如何使用PHP將數據庫與實時數據庫同步?

您不能從PHP訪問本地數據庫,只能使用javascript。

我認為您將總項目存儲在本地數據庫中,或將所有項目的last_id存儲在本地數據庫中。

在頁面加載后,使用ajax比較本地數據庫和實時數據庫的總數。 然后從Live DB加載新項目並插入到本地DB。 或清除所有本地數據庫並從實時數據庫加載所有項目。

希望對你有幫助!

我的2分錢:首先,不贊成使用WebSQL API,然后為什么考慮使用相同的API? 最好使用某些適配器,例如LocalForageYdnDBLawnChair等,這些適配器將隱藏基礎數據庫API(WebSQL或IndexedDB)。 IndexedDB規范已取代WebSQL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM