From b5b2e81d3bf8383950e05acd04887a092f1332c8 Mon Sep 17 00:00:00 2001 From: Lukas <47783030+luke23489@users.noreply.github.com> Date: Fri, 22 Apr 2022 18:50:18 +0200 Subject: [PATCH] fix overwrite issues The $jsonobj array is iterated from the back, so the first entries overwrite the newest entries (that is, the ones from the back). So it happens that instead of the traffic for today 16 o'clock ,the traffic from the day before yesterday 16 o'clock ends up in the array $data_template and is displayed in the graph. But this should not be like this! --- ajax/bandwidth/get_bandwidth_hourly.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ajax/bandwidth/get_bandwidth_hourly.php b/ajax/bandwidth/get_bandwidth_hourly.php index a8e0f5cc..31442f1e 100644 --- a/ajax/bandwidth/get_bandwidth_hourly.php +++ b/ajax/bandwidth/get_bandwidth_hourly.php @@ -41,7 +41,7 @@ if (filter_input(INPUT_GET, 'tu') == 'h') { $jsonobj = json_decode($jsonstdoutvnstat[0], true)['interfaces'][0]; $jsonData = $jsonobj['traffic']['hour']; - for ($i = count($jsonData) - 1; $i >= 0; --$i) { + for ($i = count($jsonData) - 1; $i >= 0 && $i >= count($jsonData)-25; --$i) { $data_template[$jsonData[$i]['time']['hour']]['rx'] = round($jsonData[$i]['rx'] / 1024, 0); $data_template[$jsonData[$i]['time']['hour']]['tx'] = round($jsonData[$i]['tx'] / 1024, 0); }