2012-02-25 37 views
0

我只想知道如何在這裏添加數據類型?谷歌圖表需要數據類型時,我使用此代碼:使用PHP和MySQL的Google圖表的數據類型

我從谷歌圖表得到一個錯誤,它的數據類型需要定義...請幫助。謝謝!

while($r = mysql_fetch_assoc($query)) { 

    $google_JSON = "{cols: [";  
    $column = array_keys($r); 
    foreach($column as $key=>$value){ 
     $google_JSON_cols[]="{id: '".$key."', label: '".$value."'}"; 
    }  
    $google_JSON .= implode(",",$google_JSON_cols)."],rows: [";  

    $google_JSON_rows[] = "{c:[{v: '".$r['id']."'}, {v: ".$r['count']."}]}"; 
}  
// you may need to change the above into a function that loops through rows, with $r['id'] etc, referring to the fields you want to inject.. 
//pass it into google charts data 
echo $google_JSON.implode(",",$google_JSON_rows)."]}"; 

回答

1

我沒有做過任何PHP的年齡,所以我不打算提供提供任何修補程序的代碼,但在哈希的cols參考的數組元素數據類型變爲即在其中創建{id:「key」,label:「value」}您需要添加'type:「number」'或'type:「string」'等。如何通過回頭查看您是否是字符串的數字查詢不會那麼簡單。您可以通過mysql模塊爲列提供的任何元數據來查看列類型,但大多數圖表需要系列的數字類型和x軸值的字符串/數字類型。您始終可以將第一列設置爲字符串或數字,其他列可以編號,但取決於您創建的圖表類型。

順便說一句,我很驚訝你不能在PHP中本地創建結構,然後轉換爲JSON,而不是像這樣構建JSON字符串 - 你可以很容易地在Perl中使用。

+0

感謝Man,好吧..我會嘗試在PHP中進行編碼,即時消息在使用Perl中不是很好...實際上我不熟悉它。 – 2012-03-01 01:08:56