Files
2026-06-10 19:23:50 +07:00
..
2026-06-10 19:23:50 +07:00
2026-06-10 19:23:50 +07:00
2026-06-10 19:23:50 +07:00
2026-06-10 19:23:50 +07:00
2026-06-10 19:23:50 +07:00
2026-06-10 19:23:50 +07:00
2026-06-10 19:23:50 +07:00

WebGIS Pengentasan Kemiskinan v3.0

Kota Pontianak — Berbasis Komunitas & Rumah Ibadah

Sistem WebGIS berbasis PHP + MySQL + Leaflet.js untuk pemetaan, pendataan, dan distribusi bantuan sosial kepada penduduk miskin di Kota Pontianak.


📁 Struktur Folder

webgis_v3/
├── index.php              ← Halaman utama (SPA: login + semua fitur)
├── config.php             ← Konfigurasi database & helper functions
├── database.sql           ← Skema database + data demo
├── .htaccess              ← Konfigurasi Apache (keamanan + routing)
├── uploads/               ← Foto laporan masyarakat
└── api/
    ├── auth.php           ← Login / logout / cek sesi
    ├── penduduk.php       ← CRUD data penduduk + validasi pendidikan
    ├── keluarga.php       ← CRUD data keluarga (KK)
    ├── rumah_ibadah.php   ← CRUD rumah ibadah
    ├── bantuan.php        ← Master bantuan + histori + prioritas otomatis
    ├── laporan.php        ← Laporan masyarakat + upload foto
    ├── chat.php           ← Chat antar pengurus
    ├── stats.php          ← Dashboard KPI + GeoJSON untuk peta
    ├── pelatihan.php      ← Manajemen pelatihan keterampilan
    ├── user.php           ← Manajemen user & role (superadmin)
    └── log.php            ← Log aktivitas sistem

🚀 Cara Menjalankan di XAMPP

Langkah 1 — Ekstrak & Taruh di htdocs

Ekstrak ZIP → salin folder webgis_v3 ke:
C:\xampp\htdocs\webgis_v3\

Langkah 2 — Start XAMPP

Buka XAMPP Control Panel → Start Apache dan MySQL

Langkah 3 — Import Database

  1. Buka browser → http://localhost/phpmyadmin
  2. Klik tab SQL di bagian atas
  3. Salin seluruh isi file database.sql
  4. Tempel ke kotak SQL → klik Go

Database webgis_kemiskinan akan terbuat otomatis dengan semua tabel dan data demo.

Langkah 4 — Cek config.php (jika perlu)

define('DB_HOST', 'localhost');
define('DB_USER', 'root');   // default XAMPP
define('DB_PASS', '');       // default XAMPP = kosong
define('DB_NAME', 'webgis_kemiskinan');

Langkah 5 — Buka Aplikasi

http://localhost/webgis_v3

👥 Akun Demo

Role Username Password Akses
👑 Super Admin superadmin password Semua fitur + manajemen user
🏛️ Pimpinan pimpinan1 password Dashboard monitoring (read-only)
🕌 Pengurus RI pengurus1 password Input data + distribusi bantuan
🕌 Pengurus RI pengurus2 password Input data + distribusi bantuan
🚑 Relawan relawan1 password Survey lapangan + laporan
👤 Masyarakat masyarakat1 password Lihat peta + buat laporan

Laporan masyarakat bisa dikirim tanpa login (klik chip "Lapor Tanpa Login" di halaman login).


🗄️ Struktur Database (13 Tabel)

Tabel Deskripsi
role 5 role sistem
user Akun pengguna + relasi ke role & rumah ibadah
rumah_ibadah Data masjid, gereja, vihara, klenteng, pura
keluarga Data Kartu Keluarga (KK)
penduduk Data penduduk lengkap (NIK, umur otomatis, profil umur)
pelatihan Program pelatihan keterampilan
riwayat_pelatihan Peserta per pelatihan
bantuan Master program bantuan (PKH, BPNT, BLT, dll)
histori_bantuan Riwayat penyaluran bantuan per penduduk
laporan Laporan kondisi warga dari masyarakat
chat Pesan koordinasi antar pengurus
log_aktivitas Audit trail semua aktivitas sistem

Fitur Utama

🗺️ WebGIS Interaktif

  • Peta gelap (dark mode) berbasis OpenStreetMap + CartoDB
  • 3 warna marker: 🔴 Miskin | 🟡 Rentan | 🟢 Mampu
  • Marker laporan masyarakat dengan kode urgensi
  • Layer toggle per kategori
  • Radius distribusi adjustable (1001000m)
  • Popup detail klik marker

👥 Manajemen Data Penduduk

  • NIK 16 digit sebagai primary key
  • Umur dihitung otomatis dari tanggal lahir (MySQL Generated Column)
  • Profil umur otomatis: Balita / Anak / Remaja / Dewasa / Lansia
  • Validasi pendidikan vs umur:
    • Usia 715 → peringatan jika tidak sekolah
    • Usia 1618 → peringatan jika tidak sekolah
  • Relasi ke Kartu Keluarga

🏠 Manajemen Keluarga

  • Data KK lengkap (No KK, RT/RW, kelurahan, kecamatan)
  • Relasi ke rumah ibadah terdekat
  • Daftar anggota keluarga dengan detail kondisi

🎁 Sistem Bantuan

  • Prioritas otomatis: miskin + sakit = SANGAT TINGGI; lansia sendiri = SANGAT TINGGI
  • Deteksi warga yang belum pernah menerima bantuan
  • Histori penyaluran bantuan per individu yang transparan
  • Catat distribusi langsung dari halaman bantuan

📢 Laporan Masyarakat

  • Bisa dikirim tanpa login
  • Upload foto dokumentasi (JPG/PNG, maks 5MB)
  • 4 tingkat urgensi: Rendah / Sedang / Tinggi / 🆘 Darurat
  • Alur status: Pending → Diverifikasi → Diproses → Selesai
  • Koordinat laporan via klik peta atau GPS

💬 Chat Koordinasi

  • Chat realtime antar pengurus rumah ibadah
  • Polling otomatis setiap 8 detik
  • Notifikasi dot merah jika ada pesan baru
  • Pesan broadcast ke semua pengurus

📊 Dashboard & Statistik

  • KPI card: total penduduk, KK, miskin, rentan, laporan aktif
  • Progress bar distribusi per rumah ibadah
  • Analisis singkat di sidebar

🔒 Keamanan

  • Input sanitasi (anti XSS) di semua endpoint
  • Prepared statements PDO (anti SQL Injection)
  • Session-based auth dengan cookie HttpOnly
  • Role-based access control (RBAC) di backend
  • Block akses langsung ke config.php dan database.sql via .htaccess
  • Block eksekusi PHP di folder uploads/

🛠️ Teknologi

Komponen Teknologi
Backend PHP 7.4+ (PDO, Sessions)
Database MySQL 5.7+ / MariaDB 10.3+
Peta Leaflet.js v1.9.4
Tile Map CartoDB Dark Matter (OpenStreetMap)
Geocoding Nominatim API (OSM)
Frontend Vanilla JS ES6+, CSS3 Variables
Font Plus Jakarta Sans + DM Mono

📝 Catatan Pengembangan Lanjutan

  1. Backend database: Tambah localStorage atau backend sinkronisasi untuk multi-device
  2. Export laporan: Tambah ekspor PDF/Excel menggunakan mPDF atau PhpSpreadsheet
  3. Notifikasi push: Integrasikan Firebase Cloud Messaging untuk notifikasi laporan darurat
  4. PWA offline: Service Worker untuk penggunaan lapangan tanpa internet
  5. Integrasi DTKS: Sinkronisasi dengan Data Terpadu Kesejahteraan Sosial Kemensos RI

Dikembangkan sebagai tugas Rekayasa Perangkat Lunak — Program Studi Informatika WebGIS Pengentasan Kemiskinan Berbasis Komunitas dan Rumah Ibadah — Kota Pontianak