Извлечение данных JSON с помощью .getJSON из файла php

0

У меня проблема с отправкой json-данных.

Вот мой php файл:

<?php
session_start();
$con = mysql_connect("localhost","root","");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("db", $con);
$result_array = array();
$result = mysql_query("SELECT Reg FROM bool");

while ($row = mysql_fetch_array($result)) 
$result_array[] = $row;


echo json_encode($result_array);
mysql_close($con);
?>

И вот мой сценарий js:

$(function () {
    $(document).ready(function() {
    $.getJSON("sql_bool.php", function(data) {
    alert(data[1]);     
    });    
});    
});

У меня есть данные bool, хранящиеся в моей базе данных, и когда я пытаюсь проверить с помощью функции alert(), если она прошла, все, что я получаю, - это окно предупреждения с

[object Object]

Любая идея, что неправильно?

  • 0
    Как вы хотите преобразовать объект в строку?
  • 0
    Вы можете вместо этого сделать console.log(data) ? alert слишком грубое. (Обязательно откройте консоль отладки; F12 в большинстве браузеров).
Показать ещё 5 комментариев
Теги:
alert

2 ответа

1
Лучший ответ

Похоже, все прошло хорошо. Когда вы вызываете оповещение в JavaScript, он превращает все, что вы предупреждаете, в строку. В этом случае ваш объект как строка будет [object object].

Вы можете попробовать:

для (var k в данных [1]) {alert (k); alert(data[1][k]); оповещение (данные [1] [K]); } }

  • 0
    Да, ты прав. Спасибо за такую быструю помощь.
0

То, что вы получаете, это объект, закодированный JSON. Если вы дадите это javascript, используя getJSON, он будет обрабатывать его как объект. Если вы хотите увидеть фактическую строку, полученную с сервера, вы можете попробовать следующее:

alert(JSON.stringify(data));

Это должно выводить все, что вы получили от PHP-скрипта, читаемым образом :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню