使用PHP和BackboneJS更新JSON文件
尝试建立我的网站,以便在使用BackgridJS(BackgridJS.com)编辑单元格时更新JSON文件。为了将文件保存到服务器,我使用以下代码:使用PHP和BackboneJS更新JSON文件,php,javascript,json,backbone.js,mamp,Php,Javascript,Json,Backbone.js,Mamp,尝试建立我的网站,以便在使用BackgridJS(BackgridJS.com)编辑单元格时更新JSON文件。为了将文件保存到服务器,我使用以下代码: var MyModel = Backbone.Model.extend({ initialize: function () { Backbone.Model.prototype.initialize.apply(this, arguments); this.on("change", function (model, options) { if
var MyModel = Backbone.Model.extend({
initialize: function () {
Backbone.Model.prototype.initialize.apply(this, arguments);
this.on("change", function (model, options) {
if (options && options.save === false) return;
model.save();
});
}
});
我希望它将更改应用于JSON文件,但我认为使用PHP会更容易。我读过关于如何在上实现这一点的文章,但由于我刚刚开始学习PHP,我感到非常困惑。我一直试图将代码实现到我的文件中,但在保存单元格时什么也没发生。我正在使用MAMP作为本地主机
感谢所有帮助。多亏@Ingro的帮助,这才是解决方案。在嵌入主干的HTML中:
var data1 = JSON.stringify(this);
obj = JSON.parse(data1);
$.ajax({url:"update.php",type:"POST",data:{
"data3":obj
}});
在PHP文件中:
<?php $jsonString = file_get_contents('examples/olympics.json');
$data = json_decode($jsonString,true);
$data3 = $_REQUEST ["data3"];
$data = $data3;
$newJsonString = json_encode($data);
file_put_contents('examples/olympics.json', $newJsonString);
?>
你好,John,欢迎来到SO。你也可以发布你的PHP代码吗。您还确定保存模型时PHP脚本正在运行吗?@DavidBarker感谢您的回复。我现在没有任何PHP代码。就拿了他们在另一个问题上写的。不确定如何将两者结合在一起。@DavidBarker使用此PHP代码,但这只会接管整个JSON文件,而不是将其更新为更改
您不能在PHP中直接编辑json字符串,首先必须像这样对其进行解码以获得可以编辑的数组:@Ingro Awesome。这很有效。谢谢你。现在我需要让它更新到用户输入的任何内容。很高兴你终于成功了!别忘了阅读一些教程来改进你的工作流程!