我想将数据写入json文件(应该由我创建)。
此文件中允许的条目没有任何限制。另外,我想从该文件读取相同的数据&在一个HTML页面上显示它,我将从那里收集数据。
我是jQuery的新手。一些帮助会非常明显。
提前致谢。
答案 0 :(得分:0)
我可以帮助你,但请注意,这不是一个开箱即用的解决方案:
首先需要创建一个php文件来读取/写入json文件,让我们说'post_item.php':
$title = $_POST['title'];
$description = $_POST['description'];
$file = file_get_contents("your-file.json", true);
$data = json_decode($file, true);
unset($file);
//the data you will write, which is coming from the ajax request
$data[] = array(
'id' => uniqid(),
'title' => $title,
'description' => $description
);
$result = json_encode($data);
//echo $result;
file_put_contents("your-file.json", true, $result);
$result = 'Success';
echo json_encode($result);
} else {
$result = 'Error';
echo json_encode($result);
}
您需要HTML表单才能收集和发布数据:
.....
<div class="form-group">
<label for="newTitle">Title: </label>
<input id="title" name="titel" type="text" class="form-control" />
</div>
<div class="form-group">
<label for="description">Description: </label>
<textarea id="description" name="kort_omschrijving" class="form-control"></textarea>
</div>
.....
您可以使用必须触发的ajax调用发布数据(例如,使用Click事件:
var title = $('#title').val(),
description = $('description').val()
var postData = {
title: title,
description: description
};
$.ajax({
url: 'post_item.php',
type: 'POST',
dataType: 'json',
data: postData,
})
.done(function(result) {
if(result == 'Success'){
alert('Item succesfully added')
}else{
alert('Could not add the item')
}
})
这将在你的json文件中发布数据,你需要一个其他的php文件和另一个ajax调用才能读取文件!!如果您成功实现并将文件写入json,我将帮助您完成以下步骤