Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何通过php脚本将项目添加到现有json文件中_Php_Jquery_Json_Ajax - Fatal编程技术网

如何通过php脚本将项目添加到现有json文件中

如何通过php脚本将项目添加到现有json文件中,php,jquery,json,ajax,Php,Jquery,Json,Ajax,如何使用AJAX将新数据写入.json文件,以通过php脚本使用附加数据更新.json文件。 假设JSON文件中有以下项目 [{"task":"get milk","done":false}, {"task":"get broccoli","done":false}, {"task":"bring rian","done":false}, {"task":"go to school","done":false}] 现在我想从html页面再添加一个项目 {“任务”:“买牛奶”,“完成”:fals

如何使用AJAX将新数据写入.json文件,以通过php脚本使用附加数据更新.json文件。 假设JSON文件中有以下项目

[{"task":"get milk","done":false},
{"task":"get broccoli","done":false},
{"task":"bring rian","done":false},
{"task":"go to school","done":false}]
现在我想从html页面再添加一个项目
{“任务”:“买牛奶”,“完成”:false}

我的html页面看起来像

Task:<input type="text" id="task" placeholder="what needs to be done?">
     <input type="button" value="ADD TASK" id="button">
任务:

如何在JQuery中通过php实现这一点

我首先将它们转换为一个数组:

$array = json_decode('[{"task":"get milk","done":false},
    {"task":"get broccoli","done":false},
    {"task":"bring rian","done":false},
    {"task":"go to school","done":false}]', true);
然后将新的附加到数组中:

$array[] = array(
  "task" => $_REQUEST["task"],
  "done" => false
);
然后我将它转换回JSON

$json = json_encode($array);
一个问题是,在执行此操作时,没有正确传递
task
的值。您尚未在输入上指定
名称
属性:

<input type="text" name="task" id="task" placeholder="what needs to be done?" />
//-----------------^^^^^^^^^^^

//-----------------^^^^^^^^^^^

输出:

可以使用提交表单获取此信息,这里是post代码,您也可以使用get方法

php:


在这里,我们可以首先使用获取所有内容

现在使用json_decode解码该数组。创建一个stdClass,创建匿名对象,并分配通过AJAX请求获得的值

下面的示例可以帮助您在数组末尾创建和添加新对象。只需将文件内容写回文件即可

$array = json_decode('[{"task":"get milk","done":false},
    {"task":"get broccoli","done":false},
    {"task":"bring rian","done":false},
    {"task":"go to school","done":false}]', true);
$object = new stdClass();
$object->task = "milk";
$object->done = "false";
$array[] = $object;
$new_arr = json_encode($array);

您可以从这个

Niyati Patel中引用AJAX请求,如果您发现回答您问题的答案之一,请单击勾选按钮接受答案。当然。。。谢谢普拉文的建议。我是这个网站的新手
$array = json_decode('[{"task":"get milk","done":false},
    {"task":"get broccoli","done":false},
    {"task":"bring rian","done":false},
    {"task":"go to school","done":false}]', true);
$object = new stdClass();
$object->task = "milk";
$object->done = "false";
$array[] = $object;
$new_arr = json_encode($array);