У меня есть эта форма HTML, где я помещаю sh каждую строку в массив в виде объектов и отправляю ее на PHP для обработки.
Мне удается получить идентификаторы при ответе, но я также получаю ошибку Undefined offset:1 and Trying to get property of 'id' of non-object
Я не совсем понимаю, почему. Я знаю, что первая ошибка появляется, когда у меня есть непревзойденный ключ в моем объекте, но в этом случае у меня его нет. Я подумал, может быть, это происходит из-за структурных различий массивов объектов между js и PHP. Буду признателен за любую помощь.
JavaScript и AJAX
$(function(){
$(".checkBoxClass").on("click", function() {
invoices = [];
$("table > tbody > tr").each(function () {
var $tr = $(this);
if ($tr.find(".checkBoxClass").is(":checked")) {
invoices.push({
id: Number($tr.find("#id").text()),
name: $tr.find("#adSoyad").text(),
cariKodu: $tr.find("#cariKodu").text(),
adres: $tr.find("#adres").text(),
il: $tr.find("#il").text(),
ilce: $tr.find("#ilce").text()
});
}
});
console.clear();
console.log(JSON.stringify(invoices));
});
});
function sendInvoice(){
var invoicesArray = JSON.stringify( invoices );
$.ajax({
type: "POST",
url: "invoice.php",
//contentType: 'application/json',
data: {data : invoicesArray},
success: function(respond){
alert(respond);
}
});
}
Код сервера PHP
$data = json_decode(stripslashes($_POST['data']));
for($i=0; $i<=count($data); $i++){
echo($data[$i]->id);
echo"\n";
}