Software
v0.0..1
This commit is contained in:
28
software/v0.0.1/web/db.php
Normal file
28
software/v0.0.1/web/db.php
Normal file
@@ -0,0 +1,28 @@
|
||||
<?php
|
||||
// web/db.php
|
||||
function db(): PDO {
|
||||
static $pdo = null;
|
||||
if ($pdo) return $pdo;
|
||||
|
||||
$pdo = new PDO('sqlite:' . dirname(__DIR__) . '/data/app.db', null, null, [
|
||||
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
||||
]);
|
||||
|
||||
// Bedre concurrency når bot + web arbejder samtidig
|
||||
$pdo->exec('PRAGMA journal_mode=WAL');
|
||||
$pdo->exec('PRAGMA synchronous=NORMAL');
|
||||
$pdo->exec('PRAGMA busy_timeout=3000'); // 3s
|
||||
|
||||
// Sikr users-tabellen findes (kompatibel med både 'password' og 'password_hash')
|
||||
$pdo->exec("
|
||||
CREATE TABLE IF NOT EXISTS users (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
username TEXT UNIQUE NOT NULL,
|
||||
password TEXT, -- foretrukket kolonne (password_hash())
|
||||
password_hash TEXT, -- ældre kolonne (legacy)
|
||||
role TEXT DEFAULT 'user'
|
||||
)
|
||||
");
|
||||
|
||||
return $pdo;
|
||||
}
|
||||
Reference in New Issue
Block a user