Я использую php и jquery для чтения данных из базы данных, помещаю их в двумерный массив, возвращаю их с помощью jquery и отображаю их на веб-странице. Я получаю путаницу, когда пытаюсь отобразить его.
Вот мой код jquery:
$('.sf1930').click(function(){
$year = "1930";
$.post('get_year.php', {year:$year},
function(data){
console.log(data);
$('#occupant_rect').show();
var obj = jQuery.parseJSON(data);
//$('#occupantList').append( data[0][1] );
console.log(obj[0].address);
$('#occupantList').append( obj[0].address );
})
})
Первый файл console.log прекрасно отображает мои данные:
"[{\" address \ ": \" 1202 Arch St. \ ", \" Оккупант \ ": \" Morris Wolfe портной \ "}, {\" address \ ": \" 1400 Arch St. \ ", \" оккупант \ ": \" The Great A & P Tea Co. Grocery \ "}, {\" address \ ": \" 1500 Arch St. \ ", \" оккупант \ ": \" Аптека Хоге \ " }] "
но второй консольный журнал показывает, что obj [0] .адрес не определен.
Вот мой php-код:
$year = $_POST['year'];
//echo json_encode($year);
if ($year == '1930') {
$q1930 = "SELECT address, occupant1930 FROM mytable WHERE occupant1930 <> ''";
$result = $mysqli_getstores->query($q1930);
while($row = $result->fetch_array(MYSQLI_ASSOC)) {
//echo json_encode($row['address'] . ',' . $row['occupant1930']);
$response = array(address=>$row['address'],occupant=>$row['occupant1930']);//end array
array_push($responses, $response);//push this array of one record into a larger
//array to hold all records
} //end while
echo json_encode(json_encode($responses)); //return the array of arrays
}//end year == 1930
?>
Обратите внимание, что я дважды json_encoded результаты.
Я рассмотрел ряд вопросов о стекопереработке по этой теме, но ответы, похоже, не работают для меня.
Кто-нибудь видит, что я делаю не так, пожалуйста?