2017-02-23 84 views
0

我想推動JSON編碼形式我的數據庫選擇到chart.js數據集,但即時通訊不知道如何去解決它,而沒有過度工程。推動JSON編碼的PHP到chart.js

下面是一個簡單的選擇,從它的追溯表分數:

if($teamData == 0){ 
    $allTeams = 'All'; 
} else{ 
$sql = "SELECT * FROM compScore WHERE memberId = 1"; 
$result = $conn->query($sql); 


    if ($result->num_rows > 0) { 
     while($row = $result->fetch_assoc()) { 
      $jsonScores = json_encode($row, JSON_PRETTY_PRINT); 
    } 
    } 
} 
header('Content-type: application/json'); 
echo $jsonScores; 

的這個輸出是:

{ "id": "1", "score1": "2", "score2": "3", "score3": "5", "score4": "4", "score5": "3", "score6": "2", "score7": "1", "score8": "3", "memberId": "1" } 

我有一個問題,即只取1分的記錄,我也想排除該字段memberId

更何況我如何將該結果推送到:

datasets : [ 
    { 
     fillColor: "rgba(102,45,145,.1)", 
     strokeColor: "rgba(102,45,145,1)", 
     pointColor : "rgba(220,220,220,1)", 
     pointStrokeColor : "#fff", 

     data : [] // HERE IS WHERE THE DATA NEEDS TO GO 
    } 
+0

首先從陣列中刪除不必要的元素。請參閱此鏈接:http://stackoverflow.com/questions/4466159/delete-element-from-multidimensional-array-based-on-value –

+0

之後,將其編碼爲json格式並傳入js庫部分。 –

+0

@prakashtank即時通訊不知道如何將它傳遞到js庫,這就是我有點卡住 – PhpDude

回答

1

我認爲你應該看看charts.js期望的json佈局。 https://developers.google.com/chart/interactive/docs/reference#dataparam 它需要第一級的列和行,其中每列由一個id,一個標籤和一個類型描述。 谷歌文檔是相當不錯的,儘管預期的格式是一種泰迪厄斯。

這裏是一個用於填充圖表的PHP示例。

https://developers.google.com/chart/interactive/docs/php_example

+0

很明顯,本文檔是對Google圖表的參考,但是我可以很容易地將它轉換爲chart.js?這個例子看起來非常相似。 – PhpDude

+0

Chart.js需要一個非常類似的結構,它是唯一可以失敗的方式,注意json格式,你應該沒問題。 – nico91