У меня есть форма, из которой я получаю данные с new FormData(form)
. У меня проблемы с тем, чтобы мои HTML массивы правильно перешли на PHP. Я использую vanilla JS и, например, в jQuery, использование serializeArray()
сериализовало бы мои HTML в то, что PHP понимает. Но теперь с JSON .stringify, кажется, полностью игнорируются HTML массивы, и я получаю это:
{"postData[0][val]":"1"}
передано PHP, где я ожидаю
{"postData": ["0": ["val": "1"]]}
Мой HTML:
<select name="postData[0][val]">
<option value="1">nothing</option>
<option value="2">boy</option>
<option value="3">girl</option>
</select>
<input name="postData[0][val2]" type='number'>
Мой Javascript:
const formData = new FormData(form).entries();
let postData = {};
for (var pair of formData) {
postData[pair[0]] = pair[1];
}
fetch(`${base}events/play/${event_id}`, {method: 'post', body: JSON.stringify(postData)})
Я есть правильное чтение ввода в PHP.