Leitgedanken/lieder/star/DBController.php
2022-11-21 09:47:28 +01:00

75 lines
1.7 KiB
PHP

<?php
class DBController
{
private $host = "localhost";
private $user = "root";
private $password = "";
private $database = "leitgedanken";
private static $conn;
function __construct()
{
$this->conn = mysqli_connect($this->host, $this->user, $this->password, $this->database);
}
public static function getConnection()
{
if (empty($this->conn)) {
new Database();
}
}
function getDBResult($query, $params = array())
{
$sql_statement = $this->conn->prepare($query);
if (! empty($params)) {
$this->bindParams($sql_statement, $params);
}
$sql_statement->execute();
$result = $sql_statement->get_result();
if ($result->num_rows > 0) {
while ($row = $result->fetch_assoc()) {
$resultset[] = $row;
}
}
if (! empty($resultset)) {
return $resultset;
}
}
function updateDB($query, $params = array())
{
$sql_statement = $this->conn->prepare($query);
if (! empty($params)) {
$this->bindParams($sql_statement, $params);
}
$sql_statement->execute();
}
function bindParams($sql_statement, $params)
{
$param_type = "";
foreach ($params as $query_param) {
$param_type .= $query_param["param_type"];
}
$bind_params[] = & $param_type;
foreach ($params as $k => $query_param) {
$bind_params[] = & $params[$k]["param_value"];
}
call_user_func_array(array(
$sql_statement,
'bind_param'
), $bind_params);
}
}