From 06e841d55f5810a7e55cb1a91bfdd4183d57e447 Mon Sep 17 00:00:00 2001 From: d1041231017-star Date: Thu, 11 Jun 2026 16:16:26 +0700 Subject: [PATCH] fix : import db --- 01/import_db.php | 45 +++++++++++++++++++++++++++++++++++++++++++++ 02/import_db.php | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 02/koneksi.php | 8 ++++---- 3 files changed, 96 insertions(+), 4 deletions(-) create mode 100644 01/import_db.php create mode 100644 02/import_db.php diff --git a/01/import_db.php b/01/import_db.php new file mode 100644 index 0000000..7a92d18 --- /dev/null +++ b/01/import_db.php @@ -0,0 +1,45 @@ +"; +echo "

🚀 Database Auto-Importer & Repair — Folder 01

"; +echo "

Sedang mengeksekusi migrasi tabel dan perbaikan kolom...


"; + +// Kumpulan query SQL untuk menyusun tabel dan memperbaiki error 'radius_warga' kemarin +$queries = []; + +$queries[] = "CREATE TABLE IF NOT EXISTS jalan ( + id INT(11) AUTO_INCREMENT PRIMARY KEY, + nama_jalan VARCHAR(100) NOT NULL, + status_jalan VARCHAR(50) NOT NULL, + geojson TEXT NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;"; + +$queries[] = "CREATE TABLE IF NOT EXISTS parsil ( + id INT(11) AUTO_INCREMENT PRIMARY KEY, + nama_pemilik VARCHAR(100) DEFAULT NULL, + pemilik_tanah VARCHAR(100) DEFAULT NULL, + status_kepemilikan VARCHAR(50) DEFAULT NULL, + status_shm VARCHAR(50) DEFAULT NULL, + geojson TEXT NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;"; + +// Trik Aman: Cek dan tambah kolom radius_warga jika belum ada di tabel penduduk/titik krisis kamu +// Ganti 'penduduk_miskin' dengan nama tabel titik utama kamu di folder 01 jika berbeda +$queries[] = "ALTER TABLE parsil ADD COLUMN IF NOT EXISTS radius_warga INT(11) DEFAULT 0;"; + +// Eksekusi satu per satu agar jika ada yang salah, query lain tetap jalan +$success = 0; +foreach ($queries as $index => $sql) { + if (mysqli_query($conn, $sql)) { + $success++; + } else { + echo "

❌ Gagal pada query ke-" . ($index + 1) . ": " . mysqli_error($conn) . "

"; + } +} + +echo "
✔ Selesai! Berhasil mengeksekusi $success perintah SQL di database target."; +echo "

← Kembali ke Peta Utama"; +echo ""; +?> \ No newline at end of file diff --git a/02/import_db.php b/02/import_db.php new file mode 100644 index 0000000..962e540 --- /dev/null +++ b/02/import_db.php @@ -0,0 +1,47 @@ +"; +echo "

🏛 Database Importer Intervensi Walikota Pontianak — Folder 02

"; +echo "

Sedang membangun skema tabel relasional (Masyarakat, Histori Bantuan)...


"; + +$queries = []; + +// Tabel utama penduduk miskin krisis kesehatan Pontianak +$queries[] = "CREATE TABLE IF NOT EXISTS penduduk_miskin ( + id INT(11) AUTO_INCREMENT PRIMARY KEY, + nama_kk VARCHAR(100) NOT NULL, + tanggal_lahir DATE NOT NULL, + alamat TEXT NOT NULL, + anggota_keluarga INT(11) NOT NULL, + pendidikan_terakhir VARCHAR(50) NOT NULL, + riwayat_penyakit VARCHAR(255) DEFAULT 'Tidak Ada', + latitude VARCHAR(50) NOT NULL, + longitude VARCHAR(50) NOT NULL, + status_verifikasi VARCHAR(30) DEFAULT 'Pending' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;"; + +// Tabel histori bantuan yang berelasi dengan penduduk_miskin (One to Many) +$queries[] = "CREATE TABLE IF NOT EXISTS histori_bantuan ( + id INT(11) AUTO_INCREMENT PRIMARY KEY, + id_miskin INT(11) NOT NULL, + nama_bantuan VARCHAR(100) NOT NULL, + tanggal_penyaluran DATE NOT NULL, + sumber_dana VARCHAR(50) NOT NULL, + keterangan TEXT, + FOREIGN KEY (id_miskin) REFERENCES penduduk_miskin(id) ON DELETE CASCADE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;"; + +$success = 0; +foreach ($queries as $index => $sql) { + if (mysqli_query($conn, $sql)) { + $success++; + } else { + echo "

❌ Gagal pada query ke-" . ($index + 1) . ": " . mysqli_error($conn) . "

"; + } +} + +echo "
✔ Selesai! Berhasil mengimpor $success tabel intervensi ke database server."; +echo "

← Kembali ke Peta Utama"; +echo ""; +?> \ No newline at end of file diff --git a/02/koneksi.php b/02/koneksi.php index b527aac..b5f0bf8 100644 --- a/02/koneksi.php +++ b/02/koneksi.php @@ -1,8 +1,8 @@