2014-04-27 4 views
0
$query = "SELECT Subjects FROM instructors"; 
$rows = mysqli_query($con,$query); 
{ 
    if($rows) 
    { 
     $count = 0; 
     while($row = mysqli_fetch_array($rows)) 
     { 
      $id = 'Name'.strval($count); 
      // array_push($results,$row); 
      $results[] = array($id => $row['Subjects']); 
      $count = $count + 1; 
     } 
     echo json_encode($results); 
    } 
    else 
    { 
     echo "Something wrong"; 
    } 
} 

이 JS 지금 사용 아약스는

[{"Name0":"lore"},{"Name1":"ipsum"}] 

를 출력, 나는이 이름을 좀하고 싶습니다.

$(document).ready(function(){ 
$.ajax({ 
url: "get_subs.php", 
dataType :"JSON", 
success : function(data) 
{ 
    alert(data); 
} 
    }) 
}); 

그러나이 경우에만 인쇄

0 => [object Object] 

는 또한

alert(data.Name0); 

을 시도하지만 그 같은 일을 알려줍니다. 내가 뭘 잘못하고 있니?

+0

CONSOLE.LOG'처럼 사용 무언가 (JSON.stringify (데이터, 널 (null), 4)),'읽을 수 출력 – kero

+0

경고()에 대한 디버깅 도구가 아닙니다 그래서 당신의 문제는 뭔가 코드를 디버깅에 노력하고있다 이는 사용자를위한 간단한 메시지를 의미합니다. – adeneo

+0

[Access/process (중첩) 객체, 배열 또는 JSON] 가능한 중복 (http://stackoverflow.com/questions/11922383/access-process-nested-objects-arrays-or-json) –

답변

0

데이터는 배열입니다, 그래서 당신은 인덱스로 액세스해야합니다

alert(data[0].Name0); 
0

이 JSON.stringify을 시도하고 출력하는 기능을 참조하십시오. 객체 나 배열 같은 것을 경고 할 때 출력한다는 것은 정상입니다.

alert(JSON.stringify(data));