Files
PunkteSystem-KSP/app/scripts/database_queries.php

119 lines
3.6 KiB
PHP

<?php
function handle_pdo_exception($e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
function check_user_id($con, $user_id) {
try {
$stmt = $con->prepare('SELECT user_id FROM users WHERE user_id = :user_id limit 1');
$stmt->execute(['user_id' => $user_id]);
if($stmt) {
return true;
} else {
return false;
}
} catch(PDOException $e) {
handle_pdo_exception($e);
}
}
function get_user_data_name($con, $user_name) {
try {
$stmt = $con->prepare('SELECT * FROM users WHERE user_name = :user_name limit 1');
$stmt->execute(['user_name' => $user_name]);
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt->fetch();
} catch(PDOException $e) {
handle_pdo_exception($e);
}
}
function get_user_data_id($con, $user_id) {
try {
$stmt = $con->prepare('SELECT * FROM users WHERE user_id = :user_id limit 1');
$stmt->execute(['user_id' => $user_id]);
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt->fetch();
} catch(PDOException $e) {
handle_pdo_exception($e);
}
}
function add_user($con, $username, $user_id, $user_group, $password, $salt) {
try {
$stmt = $con->prepare("INSERT INTO users (user_id, password, user_name, salt, user_group) VALUES (?, ?, ?, ?, ?)");
$stmt->bind_param("sssss", $user_id, $password, $username, $salt, $user_group);
$stmt->execute();
} catch(PDOExeption $e) {
handle_pdo_exception($e);
}
}
function get_stations($con) {
try {
$stmt = $con->prepare("SELECT name, standort FROM Station");
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt;
} catch(PDOException $e) {
handle_pdo_exceptio($e);
}
}
function get_stations_all($con) {
try {
$stmt = $con->prepare("SELECT * FROM Station");
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt;
} catch(PDOException $e) {
handle_pdo_exceptio($e);
}
}
function get_teams($con) {
try {
$stmt = $con->prepare("SELECT name, feuerwehr FROM Mannschaft");
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt;
} catch(PDOException $e) {
handle_pdo_exception($e);
}
}
function get_total_score($con) {
try {
$stmt = $con->prepare("SELECT M.name as Mannschaftsname, M.feuerwehr as Feuerwehr, SUM(P.punkte) as Gesamtpunkte FROM Punkte as P, Mannschaft as M WHERE P.m_id = M.m_id GROUP BY M.m_id ORDER BY Gesamtpunkte DESC");
$stmt->execute();
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt;
} catch(PDOException $e) {
handle_pdo_exception($e);
}
}
function get_station_name($con, $s_id) {
try {
$stmt = $con->prepare("SELECT name FROM Station WHERE s_id= :s_id");
$stmt->execute(['s_id' => $s_id]);
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt->fetch();
} catch(PDOException $e) {
handle_pdo_exception($e);
}
}
function get_station($con, $s_id) {
try {
$stmt = $con->prepare("SELECT M.name as Name, M.feuerwehr as Feuerwehr, P.punkte as Punkte, P.zeit as Zeit FROM Punkte as P, Station as S, Mannschaft as M WHERE P.s_id = S.s_id AND S.s_id = :s_id AND M.m_id = P.m_id ORDER BY Punkte DESC");
$stmt->execute(['s_id' => $s_id]);
$stmt->setFetchMode(PDO::FETCH_ASSOC);
return $stmt;
} catch(PDOException $e) {
handle_pdo_exception($e);
}
}