从sql查询创建一个javascript数组

时间:2012-11-27 08:34:03

标签: php javascript sql amcharts

实际上,我的目标是使用库amchart创建一个图形 要创建图表,代码是提供类型:

var chartData = [{
  date: new Date(2012, 0, 1),
  distance: 227,
  townName: "New York",
  townName2: "New York",
  townSize: 25,
  latitude: 40.71,
  duration: 408
}]

我有一个SQL查询,可以选择要显示的结果

$test="SELECT dat,SDCCH_Drop, SDCCH_Drop_Rate ,TCH_Assign_unsuccess,
   TCH_Assign_unsuccess_Rate, Call_Setup_Success_Rate
 FROM graph
 WHERE dat BETWEEN '$date_begin' AND '$date_fin' AND nomcel='$cell'";
$te = mysql_query($test)OR DIE("Erreur sur la requeteee");
$gra = array();
$ch1="";
while ($row = mysql_fetch_array($te)) {
  $ch1=$row['dat'];
  $gra[] = $row;
  print_r($row);
} 
$t=json_encode($gra);

但是我不知道这个sql查询结果如何在davoir的数组中出现:

是谁可以帮助我 谢谢!

2 个答案:

答案 0 :(得分:0)

您可以这样做的一种方法是运行SQL查询,将其作为数组获取,然后通过JSON返回结果。您可以在MySQL结果数组上调用json_ecncode()来执行此操作。

您需要编写PHP代码来运行查询并返回结果以及javascript以将JSON响应处理到图表对象中。

答案 1 :(得分:0)

将您的while和数组更改为

$gra = array();
while ($row = mysql_fetch_assoc($te)) {
 $gra[] = array(
       'dat'=>  $row['dat'],
       'SDCCH_Drop'=>  (int) $row['SDCCH_Drop'],
       'SDCCH_Drop_Rate'=> (float) $row['SDCCH_Drop_Rate']
    );
}
echo json_encode($gra);