connect_error) { die("Koneksi gagal: " . $conn->connect_error); } // Create database if not exists $conn->query("CREATE DATABASE IF NOT EXISTS `$db` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;"); // Select database $conn->select_db($db); // Create users table $sql_users = "CREATE TABLE IF NOT EXISTS `users` ( `id` INT AUTO_INCREMENT PRIMARY KEY, `username` VARCHAR(50) NOT NULL UNIQUE, `password` VARCHAR(255) NOT NULL, `avatar` VARCHAR(255) NOT NULL, `role` VARCHAR(20) NOT NULL DEFAULT 'admin' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;"; if (!$conn->query($sql_users)) { die("Gagal membuat tabel users: " . $conn->error); } // Seed default admin if empty $check_empty = $conn->query("SELECT COUNT(*) as count FROM users"); $row = $check_empty->fetch_assoc(); if ($row['count'] == 0) { $default_user = 'admin'; // Hashing password "admin123" $default_pass = password_hash('admin123', PASSWORD_BCRYPT); $default_avatar = 'https://ui-avatars.com/api/?name=Admin+Operator&background=1e40af&color=fff&bold=true&size=128'; $default_role = 'admin'; $stmt = $conn->prepare("INSERT INTO users (username, password, avatar, role) VALUES (?, ?, ?, ?)"); $stmt->bind_param("ssss", $default_user, $default_pass, $default_avatar, $default_role); $stmt->execute(); $stmt->close(); } ?>