jasan/config.php
2026-03-14 21:59:48 +09:00

34 lines
1.1 KiB
PHP

<?php
/**
* config.php
* FKI Asset System Configuration
*/
// Zero-Mojibake Protocol
header('Content-Type: text/html; charset=utf-8');
$db_path = __DIR__ . '/dda/assets.db';
try {
$db = new PDO("sqlite:$db_path");
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
// SQLITE 특화 설정: WAL 모드 활성화 및 외래 키 ON
$db->exec("PRAGMA journal_mode=WAL;");
$db->exec("PRAGMA foreign_keys=ON;");
$db->exec("PRAGMA busy_timeout=5000;"); // SQLite 동시성 최적화
// [중요] 시스템 설정 테이블 자동 생성 및 기본값 보정
$db->exec("CREATE TABLE IF NOT EXISTS system_settings (
key_name TEXT PRIMARY KEY,
value TEXT
)");
// 초기 기본값 삽입 (이미 존재하면 무시)
$db->exec("INSERT OR IGNORE INTO system_settings (key_name, value) VALUES ('menu_cards_visible', '1')");
$db->exec("INSERT OR IGNORE INTO system_settings (key_name, value) VALUES ('menu_mfp_visible', '1')");
} catch (PDOException $e) {
die("Database Connection Failed: " . $e->getMessage());
}