query("SELECT * FROM meta;"); $meta = []; while ($row = $results->fetchArray()) $meta[$row["key"]] = $row["value"]; print(json_encode($meta)); break; case "list-signatures": $results = $db->query("SELECT DISTINCT Signature FROM IDs ORDER BY Signature;"); $signatures = []; while ($row = $results->fetchArray()) array_push($signatures, $row["Signature"]); print(json_encode($signatures)); break; case "get-random": if (!isset($_GET["signatures"])) { print("null"); break; } if (empty($_GET["signatures"])) { print("null"); break; } $signatures = $_GET["signatures"]; $signatures = explode(",", $signatures); $in_params = implode(",", array_fill(0, count($signatures), "?")); $stmt = $db->prepare("SELECT * FROM IDs WHERE Signature IN ({$in_params}) ORDER BY RANDOM() LIMIT 1;"); foreach ($signatures as $i => $signature) $stmt->bindValue($i + 1, $signature); $results = $stmt->execute(); print(json_encode($results->fetchArray(SQLITE3_ASSOC))); break; default: print("null"); break; } $db->close();