我有一个待办事项列表程序,我希望在单击按钮后将其重置为 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><?phpif(isset($_POST['click'])){echo file_put_contents("test.json","[{"completed":false,"task":"Kitchen - Sweep Floor","important":false}]");}?></html>单击按钮时没有任何反应,没有错误或任何事情?
2 回答
守着星空守着你
TA贡献1799条经验 获得超8个赞
您还没有为表单分配操作,要使其正常工作,您应该添加当前页面的 URL(以便它重定向到自身)。只有这样才会发送 post 请求。
PHP 不会异步运行任何东西:东西只会在页面加载时发生。
呼啦一阵风
TA贡献1802条经验 获得超6个赞
您的脚本中有语法错误 - 您必须对字符串中的引号进行转义。在开发过程中始终查看网络服务器错误日志或启用错误显示。这是固定代码:
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));
- 2 回答
- 0 关注
- 434 浏览
添加回答
举报
0/150
提交
取消