我正在建立一个计算家庭作业数量的网站,但是我很难将计数器值存储在不同的PC上,因为我使用的是本地存储,它只存储在浏览器存储中。有没有办法通过互联网“保存”价值并从任何PC访问它?
答案 0 :(得分:2)
您可以将计数器保存在文件中。你需要使用服务器端语言,这是一个PHP示例。
<?php
$file = fopen("counter.txt", "r+");
flock($file, LOCK_EX); // Block other users
$counter = trim(fgets($file));
$counter++;
rewind($file); // Go back to beginning of the file
fwrite($file, "$counter\n");
fclose($file); // This will unlock the file, too
echo $counter;
答案 1 :(得分:1)
我在myjson.com上做了一个小包装,可用于简单存储。
var store = {
create: function(params) {
var def = $.Deferred();
$.ajax({
url: "https://api.myjson.com/bins",
type: "POST",
data: JSON.stringify(params),
contentType: "application/json; charset=utf-8",
dataType: "json"
}).done(function(data) {
def.resolve(data.uri.split('/').pop())
});
return def.promise();
},
update: function(id, params) {
return $.ajax({
url: "https://api.myjson.com/bins/" + id,
type: "PUT",
data: JSON.stringify(params),
contentType: "application/json; charset=utf-8",
dataType: "json"
});
},
get: function(id) {
return $.get("https://api.myjson.com/bins/" + id);
}
}
首先你创建一个实例,并获得一个ID,你只需要这样做一次来设置它并在某处存储数据
store.create({users : 0}).done(function(id) {
console.log(id);
});
确保您保存ID,因为稍后您将使用它来更新并从您刚创建的实例中获取数据。
请注意传入的对象,即我们正在保存的数据,以后可以更新。
现在要获取数据,你只需要
store.get(':id').done(function(data) {
console.log(data); // the data you've stored
});
并更新你要做的数据
store.update('4iln9', {users : 2}).done(function(data) {
console.log(data); // returns the updated data
});
快速计算一个例子 - &gt;的 http://jsfiddle.net/dcp6e0g0/ 强>