我正在使用带有 JavaScript 的 Web SQL 本地数据库创建离线应用程序。
当那时没有连接互联网时,所有条目都将插入到本地数据库 web SQL 中。
但是当我连接到互联网时,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 加载新项目并插入到本地数据库。或者清除所有本地数据库并从实时数据库加载所有项目。
希望对你有帮助!
关于javascript - 我们可以在 PHP 中使用 Web SQL 本地数据库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30230404/