在PHP中查询MySql,在Highcharts中查询JSON

时间:2014-05-15 10:40:21

标签: php mysql sql json highcharts

我在MySql表上有一个问题。我需要像这样的JSON响应:

[{"data":[[1498902400000,1],[1400112000000,0],[1400112000000,0],...],"name":"1"},
{"data":[[1598902400000,0],[1500112000000,1],[1500112000000,0],...],"name":"2"},
{"data":[[1698902400000,0],[1600112000000,1],[1600112000000,1],...],"name":"3"}]

...但我想这样(所有日期/ int在“数据:”同一性):

[{"data":[[1498902400000,1],[1400112000000,0],[1400112000000,0],...],"name":"1"},
{"data":[[1498902400000,1],[1400112000000,0],[1400112000000,0],...],"name":"2"},
{"data":[[1498902400000,1],[1400112000000,0],[1400112000000,0],...],"name":"3"}]

...但只为所有名称重新提供相同的“data:”(日期,整数)。我有一个畸形的JSON结构。 谢谢你的帮助!

PHP文件:

header('Content-type: application/json');
require_once('Connections/conexion.php'); 

///recupero nombre de Usuario de la sesion, fecha y idGrupo 
$sesionUser = $_SESSION['MM_Username'];
$sesionIdGrupo = $_GET['idGrupo'];
$sesionFechaActual = $_GET['fechaActual'];

///ARREGLO FECHA RECIBIDA PARA ADAPTARLA A FORMATO DE LA BD YY-MM-DD
$SesionFechaActualMes = explode("-", $sesionFechaActual);

mysql_select_db($database_conexion, $conexion); 
$contador=1;
$arr = array();
$items2 = array();
$dia=1;
do {  
$idDispositivoWhile = $row_RecordsetTabla3['idDispositivo'];
while ($dia < 31) {
$query_RecordsetTabla = "SELECT fecha, count(estado) FROM registros WHERE estado = '2' AND idUsuario = 'xavi' AND idGrupo = '393' AND YEAR(fecha) = '$SesionFechaActualMes[1]' AND MONTH(fecha) = '$SesionFechaActualMes[0]' AND DAY(fecha) = '$dia' AND idDispositivo='$contador'";
$RecordsetTabla = mysql_query($query_RecordsetTabla, $conexion) or die(mysql_error());
$row_RecordsetTabla = mysql_fetch_assoc($RecordsetTabla);
$totalRows_RecordsetTabla = mysql_num_rows($RecordsetTabla); 

$fecha = $row_RecordsetTabla['fecha'];
$estadoCount = $row_RecordsetTabla['count(estado)'];
$arregloFecha = date_format(new DateTime($fecha),"Y-m-d");
$arregloFecha2 = strtotime($arregloFecha) * 1000;
$contador++;
$arr = array($arregloFecha2, floatval($estadoCount));   
$items['data'][] = $arr;
}/////while que busca 31 fechas 
$items['name'] = $contador;
array_push($items2, $items);
} while ($contador < 3); /////while contador hasta 3
echo json_encode($items2);

////mysqlfreeresult
mysql_free_result($RecordsetTabla);

注意:结果用于填写Highcharts图表。 感谢!!!

我在Mysql中放了一个表截屏... enter image description here

0 个答案:

没有答案