In the hopes that other find this useful, here’s a concise function that assumes the first field is foor the date and names date, the rest are multiple series in a chart. Edit to suit.
function sql2Flot($sql){
$result = mysql_query($sql);
//Data for FLOT = [ {data:[[x,y]],label:”str”} ]
//row loop
$arrData = array();
$y=0;
while ($row = mysql_fetch_assoc($result)){
//field loop
$x=0;
foreach($row as $name=>$value){
//create the different series. assumes the first col is x, the rest are diff y series
$intDate = date(‘U’,strtotime($row['date']))*1000;
if($y==0 & $x>0){array_push($arrData,array(“label”=>$name,”data”=>array()));}
if($x>0){array_push($arrData[$x-1]['data'], array($intDate,$value));}
$x++;
}
$y++;
}
return json_encode($arrData);
}



0 Comments.