Как передать данные в json файл при нажатии на кнопку в другой файл

131
04 сентября 2019, 10:40

Сейчас оно заменяет данные в name.json(полностью его стирает и добавляет новое) и как то не так, а нужно их добавить.

есть json файл name.json

[// это файл name.json 
    {
        "Name": "vasya",
        "lastName": "vasev",
    },
    {
        "Name": "micha",
        "lastName": "misckin",
    },
]

как в него добавить новую строчку

{
            "Name": "liza",
            "lastName": "lizkin",
        }

с помощью кнопки в другом файле, добавить информацию в файл name.json

var button1 = document.querySelector('.load1'); 
 
 
button1.addEventListener('click', function(e){ 
  console.log(e); 
  //e.prevennewwtDefault(); 
   
 
 
  var arr = { 
  "Name": "liza", 
  "lastName": "lizkin", 
}; 
  var aaa = JSON.stringify(arr); 
$.ajax({ 
    url: 'data.php', 
    type: 'POST', 
    data: {myJson:  arr , fileName: 'data.json'}, 
    //contentType: 'application/json; charset=utf-8', 
    dataType: 'html', 
    success: function(msg) { 
        console.log(msg) 
    } 
}); 
  }) 
   
   button.addEventListener('click', function(e){ 
     
  e.preventDefault(); 
   
    fetch('data.json') 
    .then(function(data){ 
    
      return data.json(); 
     
    }) 
    .then(function(data){ 
      text.innerHTML += JSON.stringify(data); 
  console.log(data.text); 
   
   
    }) 
  })
<button class="load1">загрузить данные</button> 
 
<script src="jquery-3.3.1.js"></script>

и сам сервер

<?php
file_put_contents(  $_POST['fileName'], $_POST['myJson']);
?>
Answer 1

Предлагаю на сервере сделать так:

<?php
    $current_content = json_decode(file_get_contents($_POST['fileName'], true));
    array_push($current_content, $_POST["myJson"]);
    file_put_contents($_POST['fileName'], json_encode($current_content));
?>
READ ALSO
Как выполнить последовательно несколько асинхронных фунций в Javascript без коллбэков?

Как выполнить последовательно несколько асинхронных фунций в Javascript без коллбэков?

Как написать простой, понятный, легко обслуживаемый код, который запускает последовательно несколько асинхронных функций в javascript/jQuery? (когда...

126
Помощь с подключением js файлом на ajax сайте

Помощь с подключением js файлом на ajax сайте

И так уважаемые эксперты, есть сайт ajax, но котором есть 10 одинаковых страниц, но с разным выводом инфы из бд, и каждый раз требуется выполнять...

109
Как сделать кастомные типы TypeScript (Number, Array, Object, Boolean)?

Как сделать кастомные типы TypeScript (Number, Array, Object, Boolean)?

Можете помочь, пожалуйстаПерехожу с JS На TS, и сразу встал в ступор

102
Не работает код javascript, в консоли ошибок нету

Не работает код javascript, в консоли ошибок нету

начинаю изучать javascript, пишу скрипт, с помощью которого меняется цвет текста по клику мышиПочему-то не работает данный код, консоль собственно...

116