exec("CREATE TABLE IF NOT EXISTS roles ( id INT AUTO_INCREMENT PRIMARY KEY, role_name VARCHAR(50) NOT NULL UNIQUE );"); // Create users table $pdo->exec("CREATE TABLE IF NOT EXISTS users ( id INT AUTO_INCREMENT PRIMARY KEY, username VARCHAR(50) NOT NULL UNIQUE, password VARCHAR(255) NOT NULL, role_id INT NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, FOREIGN KEY (role_id) REFERENCES roles(id) );"); // Insert default roles if they don't exist $stmt = $pdo->query("SELECT COUNT(*) FROM roles"); if ($stmt->fetchColumn() == 0) { $pdo->exec("INSERT INTO roles (role_name) VALUES ('admin'), ('teacher');"); } } catch (PDOException $e) { die("Database error during auth setup: " . $e->getMessage()); } ?>