Доступ к объекту JSON с использованием jQUery - PullRequest
0 голосов
/ 20 октября 2010

Я пытаюсь получить доступ к jQuery-объекту JSON и не вижу ничего плохого в своем коде, но все, что я получаю, когда пытаюсь получить доступ к объекту, это undefined, я думал, что, возможно, это из-за так оно и есть, но я не уверен, вот мой код,

 function systems(dom_id, id){
  $.getJSON("get_systems.php", {uid:id}, function(data){
  // here I get the general system info related to the user 
     $.each(data, function(i, json){
    //here I get each systems name, related to each system
    $.getJSON('get_system_name.php', {uid:json.product_id}, function(data){
     console.log(data.products);
     $(dom_id).append('<tr><th>'+data.products+'</th></tr>');
    });

   });

  });
 };

Имя столбца с именем системы в нем называется products, поэтому я пытаюсь получить имя, используя data.products, но все, что я получаю, это undefined, как я уже упоминал выше.

Но когда я просто регистрирую data, он показывает объект, который выглядит следующим образом, [Object { products="this is the product name"}], и это PHP, который я использую для получения системных имен,

get_system_name.php:

<?php
$uid = $_GET['uid'];

mysql_connect("localhost", "user", "1234") or die(mysql_error());
mysql_select_db("the_DB") or die(mysql_error());
$query = mysql_query("SELECT products FROM products WHERE product_id='$uid'") or die(mysql_error());

while($array = mysql_fetch_array($query, true)) {
 $string[] = $array;
}

$json = json_encode($string);
echo $json;
?>

Спасибо заранее!

1 Ответ

0 голосов
/ 20 октября 2010

Вид этой строки: [Object { products="this is the product name"}]

данные на самом деле являются массивом JSON, а не JSON.Так что, если вы сделали

data[0].products

, это должно работать.Возможно, вы захотите узнать, почему он возвращается в виде массива, если только это не ваше желаемое поведение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...