Files
kaffeekasse-saas/app/database.php
T
clemens 5baf6542ce M3 Registrierung und Login-Grundlage ergänzen
- SaaS-Auth-Helper und PDO-Datenbankzugriff einführen
- Registrierung, Login, Logout und Kontoansicht ergänzen
- Auth-Migration, Flow-Check und Smoke-Abdeckung aktualisieren
2026-07-12 20:17:42 +02:00

34 lines
853 B
PHP

<?php
declare(strict_types=1);
require_once __DIR__ . '/bootstrap.php';
function app_db_pdo(): PDO
{
static $pdo = null;
if ($pdo instanceof PDO) {
return $pdo;
}
$host = app_env('DB_HOST', '');
$database = app_env('DB_NAME', '');
$user = app_env('DB_USER', '');
$password = app_env('DB_PASS', '');
$port = app_env('DB_PORT', '3306');
if ($host === '' || $database === '' || $user === '') {
throw new RuntimeException('Database environment is incomplete.');
}
$dsn = sprintf('mysql:host=%s;port=%s;dbname=%s;charset=utf8mb4', $host, $port, $database);
$pdo = new PDO($dsn, $user, $password ?? '', [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => true,
]);
return $pdo;
}