Как добавить запись на json файл?

Ссылка скопирована
1 ответ
form.addEventListener("submit", async (e) => {   e.preventDefault();    const formData = new FormData(form);   const name = formData.get("name");   form.reset();    let user = {     name: name,   };    let res = await fetch("http://127.0.0.1:5500/data.json", {     method: "POST",     headers: {       "Content-Type": "application/json; charset=UTF-8",     },     body: JSON.stringify(user),   });    let result = res.json();   alert(result); });

form.addEventListener("submit", async (e) => { e.preventDefault(); const formData = new FormData(form); const name = formData.get("name"); form.reset(); let user = { name: name, }; let res = await fetch("http://127.0.0.1:5500/data.json", { method: "POST", headers: { "Content-Type": "application/json; charset=UTF-8", }, body: JSON.stringify(user), }); let result = res.json(); alert(result); });

При отправке POST запроса получаю 405статус. Что я делаю не так?

Дополнительно:

1. вы забыли код сервера
2. let result = await res.json()

Ответы:

Что я делаю не так?

Пытаетесь решить проблему сервера на клиенте, да ещё и не анализируя логи.

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Никита Орлов Ответ

Для добавления записи в JSON файл с помощью PHP, вам понадобится использовать следующие шаги:

1. Откройте файл для записи данных. Для этого можно воспользоваться функцией `fopen` с режимом `a+`, который открывает файл для записи в конец файла. Например:

$file = fopen('data.json', 'a+');

$file = fopen('data.json', 'a+');

2. Считайте содержимое файла в переменную. Для этого используйте функцию `file_get_contents`. Например:

$data = file_get_contents('data.json');

$data = file_get_contents('data.json');

3. Преобразуйте содержимое файла из JSON в массив. Для этого используйте функцию `json_decode`. Например:

$array = json_decode($data, true);

$array = json_decode($data, true);

4. Добавьте новую запись в массив. Например:

$newData = ['name' => 'John', 'age' => 30];
$array[] = $newData;

$newData = ['name' => 'John', 'age' => 30]; $array[] = $newData;

5. Преобразуйте массив обратно в JSON формат. Для этого используйте функцию `json_encode`. Например:

$newJsonData = json_encode($array);

$newJsonData = json_encode($array);

6. Запишите новые данные обратно в файл. Например:

file_put_contents('data.json', $newJsonData);

file_put_contents('data.json', $newJsonData);

Теперь у вас должна быть новая запись в JSON файле. Не забудьте проверить права доступа к файлу для записи и обработать возможные ошибки, например, проверка на успешное открытие файла и успешную запись данных.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно