My database looks like this:
My goal is to create an SQL-query which will produce the following JSON-object :
var data = [
"year1":[
"val1":[
{"DATE":a1, "HEADER":b1, "MESSAGES":c1},
{"DATE":a2, "HEADER":b2, "MESSAGES":c2},
{"DATE":a6, "HEADER":b6, "MESSAGES":c6},
],
"val2":[
{"DATE":a5, "HEADER":b5, "MESSAGES":c5},
{"DATE":a8, "HEADER":b8, "MESSAGES":c8},
],
],
"year2":[
"val3":[
{"DATE":a3, "HEADER":b3, "MESSAGES":c3},
{"DATE":a4, "HEADER":b4, "MESSAGES":c4},
{"DATE":a7, "HEADER":b7, "MESSAGES":c7},
],
]
];
I already asked something really similar to this. But then I didn't use "year" (so it's a little bit more complex now), only "val1", "val2" etc. with it's values. So far I have tried this:
$connect = mysqli_connect("localhost", "root", "root", "Data");
$sql_year = "SELECT jaar FROM Data";
$result_year = mysqli_query($connect, $sql_year);
$data_year = array();
while ($row = mysqli_fetch_array($result_year, MYSQLI_ASSOC)) {
$data_year[$row['jaar']][] = array(
"maand"=> $row['maand'],
);
$sql_month = "SELECT * FROM Data WHERE jaar =".$row['jaar'];
$result_month = mysqli_query($connect, $sql_month);
$data_month = array();
while ($row = mysqli_fetch_array($result_month, MYSQLI_ASSOC)) {
$data_month[$row['maand']][] = array(
"day"=> $row['day'],
"weekday"=> $row['weekday'],
"zaal"=> $row['zaal'],
"stad" => $row['stad']
);
}
}
header('Content-Type: application/json');
echo json_encode($data_year);
