38 lines
1002 B
PHP
38 lines
1002 B
PHP
<?php
|
|
|
|
require_once __DIR__."/databaseCredentials.php";
|
|
|
|
// DSN (Data Source Name)
|
|
$dsn = "pgsql:host=$db_host;port=$db_port;dbname=$db_name";
|
|
|
|
try {
|
|
// Create PDO instance
|
|
$pdo = new PDO($dsn, $db_user, $db_password, [
|
|
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
|
|
]);
|
|
|
|
} catch (PDOException $e) {
|
|
echo 'Database error: ' . $e->getMessage();
|
|
}
|
|
function db_select($tblName, $cols = [], $filter = []) {
|
|
global $pdo;
|
|
// Defaults for fitler
|
|
if (is_array($filter) && empty($filter)) $filter = ["true"];
|
|
if (is_string($filter)) $filter = [$filter];
|
|
|
|
// Execute query
|
|
try {
|
|
$sql_query = 'SELECT '.implode(",",$cols).' FROM "'.$tblName.'" WHERE '.implode(" AND ",$filter).';';
|
|
$stmt = $pdo->query($sql_query);
|
|
} catch (PDOException $e) {
|
|
|
|
echo "DB QUERY ERROR: ".$e->getMessage(); die("\n\nwhile trying: $sql_query");
|
|
}
|
|
|
|
// Fetch and display results
|
|
$response = $stmt->fetchAll(PDO::FETCH_ASSOC);
|
|
|
|
return $response;
|
|
|
|
}
|