2012-04-30 14 views
7

Dinamik veriler içeren yüksek grafiklerle uğraşıyorum (veri tabanından alınan değerler). i tablodan aşağıdaki verileri almak başardı bir sorgu yazarak aşağıdaki yapıda yukarıda bilgi depolamak vejson_encode nasıl kullanılır

[{ name:'pen', data: [5,7]},{ name:'pencil', data: [4,20]},{ name:'eraser', data: [6,43]}]"; 

İstiyorum başka bir sayfaya geçmek istiyorum

Item 2011 2012 
pen  5  7 
pencil 4  20 
eraser 6  43 

Yukarıdaki verileri sondaj yüksek şaryosuna doğru itin.

Bu biçimde oluşturabilmemin bir yolu var mı? Json_encode kullanmayı denedim, ancak başarılı olamadım. Bunu json_encode kullanarak yapabilir miyim?

bu şekilde

while($row = mysql_fetch_assoc($result)) 
    { 
    $rows[]= $row; 

    } 
echo json_encode($rows); 

yargılandı ve veritabanı sonuçları aracılığıyla

[{"Item":"pen","2011":"5","2012":"7"},{"Item":"pencil","2011":"4","2012":"20"},{"Item":"eraser","2011":"6","2012":"43"}] 
+2

'json_encode' kodlar JSON değil, var Orada sahip olduğunuz Javascript nesne ifadesi (seçilmemiş anahtarlar). Yine de önemli değil. – mario

+2

Verileri serileştirmek daha iyi bir yaklaşım gibi görünüyor. – nickb

+1

@JohnConde Bazı info.check'i güncelledim – Anil

cevap

17

json_encode Diziyi JSON biçimine dönüştürmek için kullanışlı bir yöntemdir. Sağladığınız çıktıya sahip olmak için bir dizi diziye ihtiyacınız olacak. Her bir alt-dizi anahtarlarını "isim" ve "veri", "isim" Ürün sütun ve "veri" 2011 değerleri içeren dizi ve 2012.

$results = mysql_query("..."); 
$arr = array(); 

while ($row = mysql_fetch_assoc($results)) 
{ 
    $name = $row['Item']; 
    $data = array($row['2011'], $row['2012']); 

    $arr[] = array('name' => $name, 'data' => $data); 
} 

echo json_encode($arr); 
3
  1. Döngü var ve bir dizi
  2. JSON kodlamak sonuçları koyduk Updated dizi
İlgili konular