У меня только что появился вызов jQuery AJAX, и теперь у меня возникли проблемы с разбором значения, которое я возвращаю. Я работаю с базой данных MySQL и возвращая PHP array()
как и к моей функции JQuery AJAX: echo json_encode($reservationArray);
Итерация через массив JSON
Теперь, когда я добавляю это к моей странице в простом сНу теге это результат:
[{"reservation_id":"3","available":"0","lock":"0","restaurant":"2","date_made":"2013-12-09 18:39:52","date_of":"2014-01-02 00:00:00","time":"08:30:00","guests":"5","user":"0"},{"reservation_id":"4","available":"0","lock":"0","restaurant":"2","date_made":"2013-12-09 18:40:15","date_of":"2014-01-02 00:00:00","time":"08:00:00","guests":"7","user":"0"}]
Я считаю, что это правильный JSON (Пожалуйста, исправьте меня, если я ошибаюсь). Я пробовал практически каждый метод доступа к данным и не могу. Ниже приведен подход, который я беру, чтобы построить новый блок кода, кучу строк - по одному для резервирования (я сократил строку для этого примера).
EDITED:
function my_ajax(rest_id){
$.ajax({
url: 'change_restaurant.php',
type: 'POST',
data: {'action': 'get-reservations', 'rest_id': rest_id},
cache: false,
success: function(json) {
$.each(json, function(i, item) {
if(typeof item == 'object') {
newhtml += '<div>Restaurant Name :'+item.reservation_id+' Reservation Date: '+item.restaurant+'</div>'
}
else {
return false;
}
})
$('#reservation-table').append(newhtml);
},
error: function(xhr, desc, err) {
console.log(xhr + "\n" + err);
}
});
}
Я не вижу свойства «name» в объектах этого массива. Вам действительно нужно посмотреть консоль разработчика вашего браузера, чтобы проверить наличие ошибок. – Pointy
@Pointy - Я знаю, я попытался сократить пример, который сейчас отредактирую. – CFitz
@CFitz Можете ли вы предоставить свой PHP-код? Если вы сами пишете PHP, это означает, что у вас есть оператор SQL, который вытягивается только из таблицы «резервирование». Вероятно, вам нужно сделать «соединение» между «резервированием» и «рестораном», чтобы вывести нужные поля. –