'admin', 'nama' => 'Administrator Sistem', 'role' => 'admin', 'password' => 'password'], ['username' => 'petugas', 'nama' => 'Petugas Lapangan', 'role' => 'petugas', 'password' => 'password'], ['username' => 'pengurus', 'nama' => 'Pengurus Rumah Ibadah', 'role' => 'pengurus', 'password' => 'password'], ['username' => 'walikota', 'nama' => 'Walikota Pontianak', 'role' => 'walikota', 'password' => 'password'], ]; $db = getDB(); $results = []; foreach ($demoUsers as $u) { $hash = password_hash($u['password'], PASSWORD_DEFAULT); // INSERT or UPDATE $stmt = $db->prepare( "INSERT INTO users (username, nama_lengkap, role, password_hash) VALUES (?, ?, ?, ?) ON DUPLICATE KEY UPDATE nama_lengkap = VALUES(nama_lengkap), role = VALUES(role), password_hash = VALUES(password_hash)" ); $stmt->bind_param('ssss', $u['username'], $u['nama'], $u['role'], $hash); if ($stmt->execute()) { $results[] = [ 'status' => '✅ OK', 'username' => $u['username'], 'role' => $u['role'], 'hash' => $hash ]; } else { $results[] = [ 'status' => '❌ ERROR: ' . $stmt->error, 'username' => $u['username'], 'role' => $u['role'], 'hash' => '-' ]; } $stmt->close(); } $db->close(); // Output sebagai HTML yang mudah dibaca header('Content-Type: text/html; charset=utf-8'); ?> Generate Hash – WebGIS

🔑 Generate Hash – Akun Demo WebGIS

StatusUsernameRolePasswordHash (bcrypt)
password
⚠️ PERHATIAN: File ini sudah tidak diperlukan. Hapus generate_hash.php setelah proses selesai untuk keamanan sistem.

Setelah berhasil, buka login.html dan coba login.