From 2b4128b2f2bacd11a82c44b02624da08e4677d5d Mon Sep 17 00:00:00 2001 From: Aaska Black Wolf Date: Tue, 2 Jun 2026 23:58:59 +0200 Subject: [PATCH] query data from database properly --- worker.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/worker.php b/worker.php index 9929d4b..e690fb1 100644 --- a/worker.php +++ b/worker.php @@ -9,7 +9,6 @@ */ $config = readConfig(); -print_r($config); queryMonitors(); @@ -42,23 +41,24 @@ function sendMessage($message) { function queryMonitors() { global $config; // establish database connection - $dbPath = (str_starts_with($config->database, '/')) ? $config->database : dirname(__FILE__) . '/../' . $config->database; + $dbPath = (str_starts_with($config->database, '/')) ? $config->database : dirname(__FILE__) . '/' . $config->database; try { $db = new SQLite3($dbPath, SQLITE3_OPEN_READONLY); } catch (Exception $e) { + print ('error detected: ' . $e->getMessage() . "\r\n"); return false; } // query devices from database $sql = "SELECT name FROM sqlite_schema WHERE name NOT LIKE 'sqlite_%' AND name <> 'meta' ORDER BY name ASC;"; - $data = queryDb($sql); + $data = $db->query($sql); // process every device found on database - foreach( $data as $device) { + while( $device = $data->fetchArray(SQLITE3_ASSOC) ) { // query device data from database - $sql = "SELECT * FROM $device->name ORDER BY date DESC, time DESC LIMIT 1;"; + $sql = "SELECT * FROM '" . $device['name'] . "' ORDER BY date DESC, time DESC LIMIT 1;"; $res = $db->query($sql)->fetchArray(SQLITE3_NUM); - $dataset = json_decode($res[0][2]); + $dataset = json_decode($res[2]); print_r($dataset); // process configured monitors @@ -67,4 +67,4 @@ function queryMonitors() { } } -?> \ No newline at end of file +?>