Better structure

This commit is contained in:
Kilian Kurt Hofmann 2024-04-26 11:54:36 +02:00
parent 8b41f907e2
commit 09ad98ba14
6 changed files with 62 additions and 20 deletions

3
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,3 @@
{
"intelephense.environment.phpVersion": "7.4.33"
}

View File

@ -1,15 +1,35 @@
<?php
function openConnection() {
$dataAccess = parse_ini_file("phpCourse/configs/db.ini", true);
$db = new PDO("mysql:host=" . $dataAccess["ZEDAT"]["host"] .
";dbname=" . $dataAccess["ZEDAT"]["database"] . ";charset=utf8",
$dataAccess["ZEDAT"]["user"], $dataAccess["ZEDAT"]["passwd"],
array(PDO::ATTR_PERSISTENT => false));
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
return $db;
class DB extends PDO
{
public function __construct($dsn, $username = null, $password = null, array $options = null)
{
parent::__construct($dsn, $username, $password, $options);
}
static function openConnection()
{
$conn = null;
try {
$dataAccess = parse_ini_file("configs/db.ini", true);
$conn = new PDO(
"mysql:host=" . $dataAccess["ZEDAT"]["host"] .
";dbname=" . $dataAccess["ZEDAT"]["database"] . ";charset=utf8",
$dataAccess["ZEDAT"]["user"],
$dataAccess["ZEDAT"]["passwd"],
array(PDO::ATTR_PERSISTENT => false)
);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$conn->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
} catch (PDOException $exc) {
echo $exc->getMessage();
}
return $conn;
}
static function closeConnection(&$conn)
{
$conn = null;
}
}
?>

3
errors.php Normal file
View File

@ -0,0 +1,3 @@
<?php
ini_set("display_errors", 1);
error_reporting(E_ALL);

8
headers.php Normal file
View File

@ -0,0 +1,8 @@
<?php
class Headers
{
static function json()
{
header("Content-Type: text/json");
}
}

View File

@ -1,10 +1,10 @@
<?php
include_once 'database.php';
include_once "errors.php";
include_once "headers.php";
Headers::json();
include_once "database.php";
ini_set(display_errors, 1);
error_reporting(E_ALL);
$db = openConnection();
$db = DB::openConnection();
$query = "SELECT * FROM users";
@ -12,5 +12,6 @@ $stmt = $db->prepare($query);
$stmt->execute();
$result = $stmt->fetch(PDO::FETCH_ASSOC);
echo json_encode($result);
?>
DB::closeConnection($db);
echo json_encode($result);

7
phpCourse.code-workspace Normal file
View File

@ -0,0 +1,7 @@
{
"folders": [
{
"path": "."
}
]
}