单击按钮重置 json 文件

我有一个待办事项列表程序,我希望在单击按钮后将其重置为 json 文件中的一组预定义 json。例如,如果 json 文件充满数据并且有人单击了按钮,我希望它编辑 json 文件只说:


[{"completed":false,"task":"Kitchen - Sweep Floor","important":false}]

这是使用最新的稳定 php 版本在 cpanel 上的最新版本。我试过 fwrite 和 file_put_contents 但似乎无法让它工作。


这是我已经尝试过的:


<html>

<h2>Click</h2>

<form action="" method="post">

    <button name="click" class="click">Click me!</button>

</form>


<?php

if(isset($_POST['click']))

{

echo file_put_contents("test.json","[{"completed":false,"task":"Kitchen - Sweep Floor","important":false}]");

}

?>

</html>

单击按钮时没有任何反应,没有错误或任何事情?


慕村9548890
浏览 435回答 2
2回答

守着星空守着你

您还没有为表单分配操作,要使其正常工作,您应该添加当前页面的 URL(以便它重定向到自身)。只有这样才会发送 post 请求。PHP 不会异步运行任何东西:东西只会在页面加载时发生。

呼啦一阵风

您的脚本中有语法错误 - 您必须对字符串中的引号进行转义。在开发过程中始终查看网络服务器错误日志或启用错误显示。这是固定代码:echo file_put_contents("test.json","[{\"completed\":false,\"task\":\"Kitchen - Sweep Floor\",\"important\":false}]");你应该使用类似 json_decode 的东西。不要手动构建 json:$data = array("completed"=>false,"task"=>"Kitchen - Sweep Floor","important"=>false);echo file_put_contents("test.json",json_encode($data));
打开App,查看更多内容
随时随地看视频慕课网APP