2013-08-11 3 views
0

현재 mysql 데이터베이스의 데이터를 쿼리하고 JSON 문자열로 인코딩하는 웹 사이트를 개발 중입니다. Google 차트와 테이블을 사용하여 데이터를보고 싶습니다.데이터베이스에서 Google 차트의 JSON 문자열보기

현재 테이블의 데이터를 볼 수 없지만 JSON 문자열 출력이 올바른 것 같습니다.

+0

JSON이 유효하지만, dataTableViewDaily.php 스크립트가 JSON 이상을 출력하고있는 것 같습니다. HTML이 JSON으로 누출되면 실패합니다. – asgallant

+0

잘못된 JSON 오류가 발생하기 때문에 문제가 있다고 생각합니다. 그러나 dataTableViewDaily.php를 호출하고 jsonObj가 올바른 문자열을 에코 할 때 스크립트에 호출 할 때이 오류가 발생합니다. 어디에서 문제가 발생할 수 있습니까? 너는 어떤 생각을 가지고 있니? – RHJ

답변

0

당신은 당신을 변환해야 도움이 모든 종류의 감사하겠습니다 dataTableViewDaily.php

: 내가 가지고있는이 URL에 JSONString 에코 그러나

function drawVisualization() { 
     var jsonData = null; 
     var json = $.ajax({ 
      url: "dataTableViewDaily.php", // make this url point to the data file 
      dataType: "json", 
      async: false, 
      success: (
       function(data){ 
       jsonData = data; 

    var data = new google.visualization.DataTable(jsonData); 

     // Create and draw the visualization. 
     visualization = new google.visualization.Table(document.getElementById('table')); 
     visualization.draw(data, null); 
       }) 
     }).responseText; 
    } 


    google.setOnLoadCallback(drawVisualization); 

: 여기

는 자바 스크립트 코드 jsonData를 Google Chart API가 이해할 수있는 테이블로 변환합니다.

다음은 최근에 작업 한 프로젝트의 간단한 자바 스크립트 스 니펫입니다.

//Assuming jsonData has a json array : customerList 
var jsonData = { 
        "count":2, 
        "customerList":[ 
         {"customerName":"gupta","customerID":"[email protected]"}, 
         {"customerName":"neetesh","customerID":"[email protected]"} 
        ] 
       }; 
c = jsonData.customerList; 
var data = new google.visualization.DataTable(); 
data.addColumn('number', 's.no.'); 
data.addColumn('string', 'Customer Name'); 
data.addColumn('string', 'Customer email ID'); 
data.addRows(c.length); 
for(var i = 0; i < c.length; i++) 
{ 
    data.setCell(i, 0, i) 
    data.setCell(i, 1, c[i].customerID); 
    data.setCell(i, 2, c[i].customerName); 
} 
visualization = new google.visualization.Table(
          document.getElementById('table')); 
visualization.draw(data, null); 
+0

dataTableViewDaily.php는 Google 차트 api가 이해하는 JSON 문자열을 에코합니다.이 JSON이 결과로 나타납니다. { "cols": [{ "id": "A", "label": "날짜", "유형": "문자열"}, { "id": "B", "label": "User" , "type": "string"}, { "id": "C", "label": "시멘트 브랜드", "type": "string"}, { "id": "D" "", "유형": "문자열"}], "행": [{ ""c ":" { "v": "08-06-2013"}, { "v": "[email protected]"}, { "v": "Muthana"}, { "v": "27"} , { "v": "Local Plant"}}}, { "c": [{ "v": "08-06-2013"}, { "v": "[email protected]"}, { "v": "Samawa"}, { "v": "28"}, { "v": "Local Plant"}]}}} – RHJ

+0

JSON 문자열을 dataTableViewDaily에 반향 출력하면 문제가되는 것 같습니다. JSON 문자열이 올바르므로 javascript에 출력을 읽을 수 없으므로 .php. 그러나 이것은이 파일에있는 코드의 일부입니다. $ jsonObj = json_encode ($ table); 헤더 ('Cache-Control : no-cache, must-revalidate'); header ('Content-type : application/json'); echo $ jsonObj; – RHJ

+0

JSON 데이터가 완벽합니다. Firebug 또는 Chrome 개발자 도구를 사용하여 서버에서 정확히 무엇이 반환되는지 확인하십시오. – ntsh

관련 문제