С помощью скрипта ниже сохраняю в json файл post данные, сохраняет в таком виде:
{"name":"Bot","email":"bot@bot.ru"}
Каждый раз при нажатии на кнопку Submit данные в json файле просто добавляются так:
{"name":"Bot","email":"bot@bot.ru"}{"name":"Bot","email":"bot@bot.ru"}{"name":"Bot","email":"bot@bot.ru"}
Как сделать, чтобы данные продолжали сохраняться в валидный json файл, по этому образцу:
[{"name":"Bot","email":"bot@bot.ru"},{"name":"Bot2","email":"bot2@bot2.ru"}]
Код формы:
<?php
if(isset($_POST['submit'])) {
$file = "data.json";
$arr = array(
'name' => $_POST['name'],
'email' => $_POST['email']
);
$json_string = json_encode($arr);
file_put_contents($file, $json_string, FILE_APPEND);
// echo $json_string;
}
?>
<!doctype html>
<html>
<head>
</head>
<body>
<div style="text-align: center;">
<h1>Form</h1>
<form name="form1" method="post" action="">
<p>
<label for="name">Name: </label>
<input type="text" name="name" id="name" placeholder="Your full name" autofocus required>
</p>
<p>
<label for="email">Email: </label>
<input type="email" name="email" id="email">
</p>
<p style="text-align: center;">
<input type="submit" name="submit" id="submit" value="Submit">
</p>
</form>
</div>
</body>
</html>
Спасибо!
p.s. мне необходимо просто сохранять данные из input вводимые на сайте, чтобы потом вывести их на сайте в виде облака тегов. Что-то вроде "Сегодня у нас искали", но без MySQL