Опубликуйте массив JSON.stringified в следующем формате:

[{"AccountNumber":1630,"AccountName":"text1","Balance":83,"AccountType":6,"AccountTypeDescription":"text2"},{"AccountNumber":1930,"AccountName":"text3","Balance":1444492.39,"AccountType":9,"AccountTypeDescription":"text4"}]

На конце php он возвращает пустой массив. Чего не хватает?

Кодировка JQuery:

$.ajax({
url: 'url.php',
type: 'post',
contentType: 'application/json',
data: JSON.stringify(resp.responseJSON.Data),
success: function (data2) {
console.log(data2);
},
});

Php :

print_r($_POST);
0
Kevin Lindmark 26 Окт 2019 в 23:29
Используйте file_get_contents('php://input') для извлечения строки json из запроса
 – 
charlietfl
27 Окт 2019 в 00:29
Попробуйте var_dump ($ _ POST) вместо print_r и проверьте, что вы получите?
 – 
daremachine
27 Окт 2019 в 00:36

2 ответа

Я думаю, в этой строке есть ошибка undefined:

data: JSON.stringify(resp.responseJSON.Data)

Если имя вашей переменной массива resp:

var resp=[{"AccountNumber":1630,"AccountName":"text1","Balance":83,"AccountType":6,"AccountTypeDescription":"text2"},{"AccountNumber":1930,"AccountName":"text3","Balance":1444492.39,"AccountType":9,"AccountTypeDescription":"text4"}]

Тогда попробуйте:

$.ajax({
url: 'url.php',
type: 'post',
contentType: 'application/json',
data: JSON.stringify(resp),
success: function (data2) {
console.log(data2);
}
});
0
Ritesh Khandekar 27 Окт 2019 в 06:42

Удалите JSON.stringify в части данных и поместите ответ в массив. Например, var urdata = []; urdata.push (соответственноresponseJSON.Data);

В вызове Ajax: data: urdata

-2
Somnath Ghosh 27 Окт 2019 в 00:35
Нет, если отправлено как 'application/json'
 – 
charlietfl
27 Окт 2019 в 00:56
Я не согласен. Вы либо устанавливаете тип контента, либо отправляете сериализованные данные
 – 
Somnath Ghosh
27 Окт 2019 в 01:03
Верно ... но OP уже устанавливает contentType. Итак, если вы хотите, чтобы они сериализовались, вам нужно уточнить, а не смешивать два
 – 
charlietfl
27 Окт 2019 в 01:03
Оп? Так что лучше, если он не сериализует. Кроме того, ему нужны данные в массиве, но он не отправляет массив
 – 
Somnath Ghosh
27 Окт 2019 в 01:06
OP = Исходное сообщение .... показанные данные кажутся мне массивом
 – 
charlietfl
27 Окт 2019 в 01:08