@rapidum_alder

Данные через Fetch() в PHP и обратно. Как отправить объект / массив?

Пытаюсь разобраться с fetch() в Javascript. Но не знаю как отправить группу данных через POST.

То что я наваял в JS
function i(c) {return document.getElementById(c);}
var url='test.php';
i('postData').addEventListener('submit', postData);

function postData(event){event.preventDefault();
    var post = [i('tittle').value, i('body').value];
      console.log(post);
    fetch(url, {
        method: 'POST',
        body: JSON.stringify(post),
    }).then(response => response.json())
    .then((data) =>  console.log(data))
}


и PHP
<?php
$out[] = file_get_contents('php://input');
$out[] = 100;
$out[] = $_POST;
echo json_encode($out);
?>


Вывод в Консоли:

main.js:8
(2) ["12314", "134"]
0: "12314"
1: "134"
length: 2
__proto__: Array(0)

main.js:13
(3) ["["12314","134"]", 100, Array(0)]
0: "["12314","134"]"
1: 100
2: Array(0)
length: 0
__proto__: Array(0)
length: 3
__proto__: Array(0)


Возможно я забыл какой-то метод, буду рад подсказке.
  • Вопрос задан
  • 7913 просмотров
Решения вопроса 1
@dpws
<?php
$out[] = json_decode(file_get_contents('php://input'));
$out[] = 100;
$out[] = $_POST;
echo json_encode($out);
?>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы