PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, ]; $pdo = new PDO($dsn, DB_USER, DB_PASS, $options); } catch (PDOException $e) { die("Connection failed: " . $e->getMessage()); } // Function to handle database operations safely function query($sql, $params = []) { global $pdo; $stmt = $pdo->prepare($sql); $stmt->execute($params); return $stmt; } function fetchAll($sql, $params = []) { return query($sql, $params)->fetchAll(); } function fetchOne($sql, $params = []) { return query($sql, $params)->fetch(); } function rowCount($sql, $params = []) { return query($sql, $params)->rowCount(); } ?>