iwa-panda1

Manage Weather Data by International Weather Agency (Version 1)
Log | Files | Refs

commit 32724d6da6e10ff8c8809c59cc280142632904db
parent b02128e885d667addd55ed9a84c38038e79f8672
Author: LennartSchroot <[email protected]>
Date:   Sun,  2 Apr 2023 14:46:05 +0200

moi

Diffstat:
Mdatainserter.php | 6++++--
Mdatavalidator.php | 8++++----
2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/datainserter.php b/datainserter.php @@ -69,8 +69,10 @@ if ($_SERVER['REQUEST_METHOD'] == 'POST') { // Bind parameters to prepared statement mysqli_stmt_bind_param($stmt, "isiddddddddsiiiiiidi", $stn, $datetime, $valid, $temp, $dewp, $stp, $slp, $visib, $wdsp, $prcp, $sndp, $frshtt, $vorst,$regen,$sneeuw,$hagel,$onweer,$tornado, $cldc, $wnddir); - // Execute prepared statement - $result = mysqli_stmt_execute($stmt); + // Execute prepared statement, only if the data is not within the first 30 entries + if ($valid == 1 || $valid == 0) { + $result = mysqli_stmt_execute($stmt); + } // Second Insert for shadow table if ($valid == 0) { diff --git a/datavalidator.php b/datavalidator.php @@ -19,7 +19,7 @@ function validate_temperature($station, $temperatuur, $redis) { if(!$redis->exists('values'.$station)) { $redis->lpush('values'.$station, $temperatuur); $redis->lpush('average'.$station, $temperatuur); - return $temperatuur; + return -1; } //Als het aantal values de 30 nog niet bereikt heeft, berekend hij gewoon het gemiddelde en voegt de value toe aan de queue else { @@ -27,7 +27,7 @@ function validate_temperature($station, $temperatuur, $redis) { $avg = ($redis->rpop('average'.$station) * $redis->llen('values'.$station) + $temperatuur) / ($redis->llen('values'.$station) + 1); $redis->lpush('average'.$station, $avg); $redis->lpush('values'.$station, $temperatuur); - return $temperatuur; + return -1; } //Bij 30 values zal de volgende value eerst gecheckt worden met het bekende gemiddelde en eventueel aangepast worden. //Daarna zal deze toegevoegd worden aan de value en average queue. De laatste waarde zal eruit gehaald worden. @@ -38,13 +38,13 @@ function validate_temperature($station, $temperatuur, $redis) { $new_avg = (($redis->rpop('average'.$station) * 30) - $redis->rpop('values'.$station) + $temperatuur) / 30; $redis->lpush('average'.$station, $new_avg); $redis->lpush('values'.$station, $temperatuur); - return $temperatuur; + return 0; } else { $new_avg = (($redis->rpop('average'.$station) * 30) - $redis->rpop('values'.$station) + $temperatuur) / 30; $redis->lpush('average'.$station, $new_avg); $redis->lpush('values'.$station, $temperatuur); - return $temperatuur; + return 1; } } }