Bonjour,
Je voudrais obtenir un format json suivant avec plusieurs requêtes sql afin de réaliser un graphique avec highstock.
Voici le format json souhaité:
[[1387648232000,21,9,11,49],[1387648232000,21,9,11,40],[1387648232000,21,9,11,40],[1387648232000,21,9,11,40],[1387648232000,21,9,11,40],[1387648232000,21,9,11,40]]
J'ai imbriqué des whiles pour essayer d'obtenir le bon format json mais seule la dernière valeure est correcte.
Voici mes requêtes sql :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| $sql_date = mysql_query("SELECT DISTINCT UNIX_TIMESTAMP(ftimestamp) AS date
FROM graph
ORDER BY date ASC ");
$sql_tsejour = mysql_query("SELECT fvalue as tsejour,
UNIX_TIMESTAMP(ftimestamp)
FROM graph
WHERE ffeed = 'T_Sejour'
ORDER BY UNIX_TIMESTAMP(ftimestamp) ASC ");
$sql_text = mysql_query("SELECT fvalue as text,
UNIX_TIMESTAMP(ftimestamp)
FROM graph
WHERE ffeed = 'T_Ext'
ORDER BY UNIX_TIMESTAMP(ftimestamp) ASC ");
$sql_tsouf = mysql_query("SELECT fvalue as tsouf,
UNIX_TIMESTAMP(ftimestamp)
FROM graph
WHERE ffeed = 'T_Souf'
ORDER BY UNIX_TIMESTAMP(ftimestamp) ASC ");
$sql_hsejour = mysql_query("SELECT fvalue as hsejour,
UNIX_TIMESTAMP(ftimestamp)
FROM graph
WHERE ffeed = 'H_Sejour'
ORDER BY UNIX_TIMESTAMP(ftimestamp) ASC ");
while($date = mysql_fetch_array($sql_date)) {
$result_date = $date['date']*1000;
while($tsejour = mysql_fetch_array($sql_tsejour)) {
$result_tsejour = $tsejour['tsejour'];
while($text = mysql_fetch_array($sql_text)) {
$result_text = $text['text'];
while($tsouf = mysql_fetch_array($sql_tsouf)) {
$result_tsouf = $tsouf['tsouf'];
while($hsejour = mysql_fetch_array($sql_hsejour)) {
$result_hsejour = $hsejour['hsejour'];
$result [] = array($result_date, $result_tsejour, $result_text, $result_tsouf, $result_hsejour);
}
}
}
}
}
print json_encode($result, JSON_NUMERIC_CHECK); |
J'obtiens bien le format json souhaité, mais seule la dernière valeure du dernier while est correcte.
Comment faire ?
Merci pour votre aide.
Partager