Compare commits
7 Commits
8365c0e319
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 5fdaa8f726 | |||
| b87cdbcdfc | |||
| ebf0ae8bd1 | |||
| e107eed06b | |||
| cd7684d8f9 | |||
| 4b0335953d | |||
| b0d46d00ff |
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"name": "destra/webgis-uas",
|
||||||
|
"description": "WebGIS terpadu untuk UAS",
|
||||||
|
"require": {
|
||||||
|
"php": "^8.2",
|
||||||
|
"ext-mysqli": "*"
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -15,10 +15,10 @@ Tujuan utama dari sistem ini adalah untuk membantu identifikasi dan distribusi b
|
|||||||
* Menyimpan informasi detail seperti Nama Kepala Keluarga, Jumlah Anggota KK, dan Alamat.
|
* Menyimpan informasi detail seperti Nama Kepala Keluarga, Jumlah Anggota KK, dan Alamat.
|
||||||
* Tampil sebagai marker interaktif di atas peta.
|
* Tampil sebagai marker interaktif di atas peta.
|
||||||
|
|
||||||
### 2. 🕌 Manajemen Data Rumah Ibadah
|
### 2. 🕌 Manajemen Data Rumah Ibadah (Masjid)
|
||||||
* Pemetaan lokasi rumah ibadah beserta penanggung jawab (PIC).
|
* Pemetaan lokasi masjid beserta penanggung jawab (PIC).
|
||||||
* **Fitur Radius (Buffer):** Secara otomatis menggambar lingkaran dengan radius 500 meter di sekitar rumah ibadah.
|
* **Fitur Radius (Buffer):** Secara otomatis menggambar lingkaran dengan radius 500 meter di sekitar masjid.
|
||||||
* Memudahkan identifikasi keluarga prasejahtera yang berada di dalam maupun di luar zona jangkauan bantuan rumah ibadah tersebut.
|
* Memudahkan identifikasi keluarga prasejahtera yang berada di dalam maupun di luar zona jangkauan bantuan masjid tersebut.
|
||||||
|
|
||||||
### 3. 📢 Sistem Laporan Warga & Pesan
|
### 3. 📢 Sistem Laporan Warga & Pesan
|
||||||
* Memungkinkan warga untuk melaporkan kondisi sosial atau keluarga yang membutuhkan bantuan di sekitarnya.
|
* Memungkinkan warga untuk melaporkan kondisi sosial atau keluarga yang membutuhkan bantuan di sekitarnya.
|
||||||
@@ -26,11 +26,11 @@ Tujuan utama dari sistem ini adalah untuk membantu identifikasi dan distribusi b
|
|||||||
|
|
||||||
### 4. 🗺️ Simulasi Rute (Routing)
|
### 4. 🗺️ Simulasi Rute (Routing)
|
||||||
* Integrasi Leaflet Routing Machine.
|
* Integrasi Leaflet Routing Machine.
|
||||||
* Mampu menyimulasikan dan menggambar rute jalan dari titik posko/rumah ibadah menuju rumah tujuan penerima bantuan.
|
* Mampu menyimulasikan dan menggambar rute jalan dari titik posko/masjid menuju rumah tujuan penerima bantuan.
|
||||||
|
|
||||||
### 5. 🖨️ Ekspor Data & Laporan
|
### 5. 🖨️ Ekspor Data & Laporan
|
||||||
* **Cetak Peta (PDF):** Mengekspor tampilan peta saat ini ke dalam format PDF menggunakan tangkapan layar otomatis.
|
* **Cetak Peta (PDF):** Mengekspor tampilan peta saat ini ke dalam format PDF menggunakan tangkapan layar otomatis.
|
||||||
* **Unduh Data (CSV):** Mengunduh data atribut kemiskinan dan rumah ibadah ke format CSV untuk analisis lanjutan.
|
* **Unduh Data (CSV):** Mengunduh data atribut kemiskinan dan masjid ke format CSV untuk analisis lanjutan.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -51,7 +51,7 @@ Tujuan utama dari sistem ini adalah untuk membantu identifikasi dan distribusi b
|
|||||||
Sistem ini terhubung ke MySQL dan secara otomatis membuat tabel jika belum ada (*Auto Bootstrap*). Tabel utama meliputi:
|
Sistem ini terhubung ke MySQL dan secara otomatis membuat tabel jika belum ada (*Auto Bootstrap*). Tabel utama meliputi:
|
||||||
|
|
||||||
1. **`kemiskinan`**: Menyimpan identitas, jumlah anggota, alamat, serta koordinat (Latitude & Longitude) keluarga.
|
1. **`kemiskinan`**: Menyimpan identitas, jumlah anggota, alamat, serta koordinat (Latitude & Longitude) keluarga.
|
||||||
2. **`masjid`**: Menyimpan data rumah ibadah, PIC, koordinat, serta besaran radius cakupan bantuan (default: 500m).
|
2. **`masjid`**: Menyimpan data masjid, PIC, koordinat, serta besaran radius cakupan bantuan (default: 500m).
|
||||||
3. **`laporan`**: Menyimpan data laporan dari warga beserta bukti foto dan titik koordinat temuan.
|
3. **`laporan`**: Menyimpan data laporan dari warga beserta bukti foto dan titik koordinat temuan.
|
||||||
4. **`pesan`**: Menyimpan pesan/kontak masuk dari pengunjung.
|
4. **`pesan`**: Menyimpan pesan/kontak masuk dari pengunjung.
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
<?php
|
||||||
|
header("Location: index.html");
|
||||||
|
exit;
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<?php
|
||||||
|
require 'koneksi.php';
|
||||||
|
|
||||||
|
$result = mysqli_query($conn, "SELECT id, username, role FROM pengguna");
|
||||||
|
|
||||||
|
$data = [];
|
||||||
|
|
||||||
|
while ($row = mysqli_fetch_assoc($result)) {
|
||||||
|
$data[] = $row;
|
||||||
|
}
|
||||||
|
|
||||||
|
header('Content-Type: application/json');
|
||||||
|
echo json_encode($data, JSON_PRETTY_PRINT);
|
||||||
@@ -15,7 +15,6 @@ mysqli_set_charset($conn, "utf8mb4");
|
|||||||
// Helper: tambah kolom hanya jika belum ada
|
// Helper: tambah kolom hanya jika belum ada
|
||||||
function addColumnIfNotExists($conn, $table, $column, $definition)
|
function addColumnIfNotExists($conn, $table, $column, $definition)
|
||||||
{
|
{
|
||||||
$db = mysqli_select_db($conn, 'webgis_kemiskinan') ? 'webgis_kemiskinan' : '';
|
|
||||||
$check = mysqli_query(
|
$check = mysqli_query(
|
||||||
$conn,
|
$conn,
|
||||||
"SELECT COUNT(*) as cnt FROM information_schema.COLUMNS
|
"SELECT COUNT(*) as cnt FROM information_schema.COLUMNS
|
||||||
|
|||||||
@@ -0,0 +1,3 @@
|
|||||||
|
<?php
|
||||||
|
header("Location: index.html");
|
||||||
|
exit;
|
||||||
@@ -13,6 +13,48 @@ if (!$conn) {
|
|||||||
mysqli_set_charset($conn, "utf8mb4");
|
mysqli_set_charset($conn, "utf8mb4");
|
||||||
|
|
||||||
$bootstrapQueries = [
|
$bootstrapQueries = [
|
||||||
|
|
||||||
|
// SPBU
|
||||||
|
"CREATE TABLE IF NOT EXISTS spbu (
|
||||||
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
nama VARCHAR(255) NOT NULL,
|
||||||
|
no_spbu VARCHAR(100) NOT NULL,
|
||||||
|
status ENUM('24jam','tidak') NOT NULL,
|
||||||
|
latitude DOUBLE NOT NULL,
|
||||||
|
longitude DOUBLE NOT NULL,
|
||||||
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||||
|
)",
|
||||||
|
|
||||||
|
// Jalan
|
||||||
|
"CREATE TABLE IF NOT EXISTS jalan (
|
||||||
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
nama VARCHAR(255) NOT NULL,
|
||||||
|
status ENUM(
|
||||||
|
'Jalan Nasional',
|
||||||
|
'Jalan Provinsi',
|
||||||
|
'Jalan Kabupaten'
|
||||||
|
) NOT NULL,
|
||||||
|
panjang DOUBLE NOT NULL,
|
||||||
|
geom LONGTEXT NOT NULL,
|
||||||
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||||
|
)",
|
||||||
|
|
||||||
|
// Kavling
|
||||||
|
"CREATE TABLE IF NOT EXISTS kavling (
|
||||||
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
nama VARCHAR(255) NOT NULL,
|
||||||
|
status ENUM(
|
||||||
|
'SHM',
|
||||||
|
'HGB',
|
||||||
|
'HGU',
|
||||||
|
'HP'
|
||||||
|
) NOT NULL,
|
||||||
|
luas DOUBLE NOT NULL,
|
||||||
|
geom LONGTEXT NOT NULL,
|
||||||
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||||
|
)",
|
||||||
|
|
||||||
|
// Kemiskinan
|
||||||
"CREATE TABLE IF NOT EXISTS kemiskinan (
|
"CREATE TABLE IF NOT EXISTS kemiskinan (
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||||
nama_kepala_keluarga VARCHAR(150) NOT NULL,
|
nama_kepala_keluarga VARCHAR(150) NOT NULL,
|
||||||
@@ -22,6 +64,8 @@ $bootstrapQueries = [
|
|||||||
longitude DOUBLE NOT NULL,
|
longitude DOUBLE NOT NULL,
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||||
)",
|
)",
|
||||||
|
|
||||||
|
// Masjid
|
||||||
"CREATE TABLE IF NOT EXISTS masjid (
|
"CREATE TABLE IF NOT EXISTS masjid (
|
||||||
id INT AUTO_INCREMENT PRIMARY KEY,
|
id INT AUTO_INCREMENT PRIMARY KEY,
|
||||||
nama_masjid VARCHAR(150) NOT NULL,
|
nama_masjid VARCHAR(150) NOT NULL,
|
||||||
@@ -35,6 +79,8 @@ $bootstrapQueries = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
foreach ($bootstrapQueries as $query) {
|
foreach ($bootstrapQueries as $query) {
|
||||||
mysqli_query($conn, $query);
|
if (!mysqli_query($conn, $query)) {
|
||||||
|
die(mysqli_error($conn));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
Reference in New Issue
Block a user