Initial commit — WebGIS UAS GeoMiskin
Sistem WebGIS analisis sebaran penduduk miskin dan jangkauan rumah ibadah. Fitur: peta interaktif Leaflet.js, CRUD rumah ibadah & penduduk miskin, auto-kategorisasi haversine, heatmap, export PDF/CSV, dashboard analitik, manajemen pengguna (superadmin/admin), login sistem. Teknologi: PHP, MySQL, Leaflet.js, OpenStreetMap, Nominatim Geocoding, mPDF. Catatan: jalankan `composer install` di folder uas/ untuk install dependencies. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
<?php
|
||||
header('Content-Type: application/json');
|
||||
include '../koneksi.php';
|
||||
include '../auth.php';
|
||||
requireLogin();
|
||||
|
||||
// Rumah Ibadah
|
||||
$ibadah = mysqli_fetch_all(
|
||||
mysqli_query($conn, "SELECT * FROM rumah_ibadah ORDER BY nama"),
|
||||
MYSQLI_ASSOC
|
||||
);
|
||||
|
||||
// Penduduk miskin with anggota count
|
||||
$penduduk_raw = mysqli_fetch_all(
|
||||
mysqli_query($conn,
|
||||
"SELECT p.*, COUNT(a.id) as jumlah_anggota_db
|
||||
FROM penduduk_miskin p
|
||||
LEFT JOIN anggota_keluarga a ON a.penduduk_id = p.id
|
||||
GROUP BY p.id
|
||||
ORDER BY p.kk_nama"),
|
||||
MYSQLI_ASSOC
|
||||
);
|
||||
|
||||
// Attach anggota keluarga to each penduduk
|
||||
$penduduk = [];
|
||||
foreach ($penduduk_raw as $p) {
|
||||
$pid = (int)$p['id'];
|
||||
$anggota = mysqli_fetch_all(
|
||||
mysqli_query($conn, "SELECT * FROM anggota_keluarga WHERE penduduk_id = $pid ORDER BY id"),
|
||||
MYSQLI_ASSOC
|
||||
);
|
||||
// Use jumlah_anggota from table if set, else count from anggota table
|
||||
if (empty($p['jumlah_anggota'])) {
|
||||
$p['jumlah_anggota'] = count($anggota) ?: 1;
|
||||
}
|
||||
$p['anggota'] = $anggota;
|
||||
$penduduk[] = $p;
|
||||
}
|
||||
|
||||
echo json_encode(['ibadah' => $ibadah, 'penduduk' => $penduduk]);
|
||||
Reference in New Issue
Block a user