// Skrip database.sql (Jalankan di phpMyAdmin Hostinger):
CREATE TABLE IF NOT EXISTS materials (
id VARCHAR(50) PRIMARY KEY,
title VARCHAR(255) NOT NULL,
category VARCHAR(50) NOT NULL,
level INT NOT NULL,
type VARCHAR(20) NOT NULL,
source VARCHAR(20) NOT NULL,
url TEXT NOT NULL,
description TEXT,
quiz JSON,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE IF NOT EXISTS users (
id VARCHAR(50) PRIMARY KEY,
name VARCHAR(100) NOT NULL,
username VARCHAR(50) UNIQUE NOT NULL,
password VARCHAR(255) NOT NULL,
role ENUM('admin', 'pembina', 'siswa') NOT NULL,
level INT DEFAULT 1,
pembina_name VARCHAR(100) DEFAULT ''
);
CREATE TABLE IF NOT EXISTS student_results (
id VARCHAR(50) PRIMARY KEY,
student_name VARCHAR(100) NOT NULL,
pembina_name VARCHAR(100) DEFAULT '',
level INT DEFAULT 1,
material_id VARCHAR(50) NOT NULL,
material_title VARCHAR(255) NOT NULL,
score INT NOT NULL,
passed TINYINT(1) NOT NULL,
answers JSON,
date_str VARCHAR(50),
resume_text TEXT,
resume_file JSON,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);