diff --git a/01/import_db.php b/01/import_db.php
index f6fd5a9..9f40bb3 100644
--- a/01/import_db.php
+++ b/01/import_db.php
@@ -1,14 +1,13 @@
";
-echo "
Sedang mengeksekusi migrasi tabel secara aman...
Sedang memperbaiki struktur tabel Tugas...
";
-echo "
🏛 Database Importer Intervensi Walikota Pontianak — Folder 02 (Updated)
";
-echo "
Sedang membangun skema tabel relasional dan hak akses pengguna...
";
+echo "
🏛 Database Sync & Repair — Folder 02 (UAS)
";
+echo "
Sedang memperbaiki relasi data intervensi krisis...
";
$queries = [];
-// 1. Tabel Otentikasi Pengguna (Users) untuk Login
+// 1. Tabel Users
$queries[] = "CREATE TABLE IF NOT EXISTS users (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
@@ -16,37 +16,44 @@ $queries[] = "CREATE TABLE IF NOT EXISTS users (
role VARCHAR(30) NOT NULL DEFAULT 'admin'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;";
-// 2. Isi Akun Default untuk Login (Username: admin, Password: admin)
-// Menggunakan INSERT IGNORE agar jika di-refresh tidak menduplikat data
$queries[] = "INSERT IGNORE INTO users (id, username, password, nama_lengkap, role)
- VALUES (1, 'admin', 'admin', 'Diva Schenka (Admin)', 'admin'),
- (2, 'walikota', 'walikota', 'Walikota Pontianak', 'walikota');";
+ VALUES (1, 'admin', 'admin', 'Diva Schenka (Admin)', 'admin');";
-// 3. Tabel utama penduduk miskin krisis kesehatan Pontianak
+// 2. Tabel Penduduk Miskin (Ditambahkan kolom 'umur' sesuai error simpan_miskin.php)
$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,
+ tanggal_lahir DATE DEFAULT NULL,
+ umur INT(11) DEFAULT NULL,
alamat TEXT NOT NULL,
- anggota_keluarga INT(11) NOT NULL,
- pendidikan_terakhir VARCHAR(50) NOT NULL,
+ anggota_keluarga INT(11) DEFAULT 0,
+ pendidikan_terakhir VARCHAR(50) DEFAULT 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;";
-// 4. Tabel histori bantuan yang berelasi dengan penduduk_miskin (One to Many)
+// 3. Tabel Histori Bantuan (Kolom relasi disesuaikan menjadi id_warga agar JOIN h.id_warga sukses)
$queries[] = "CREATE TABLE IF NOT EXISTS histori_bantuan (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
- id_miskin INT(11) NOT NULL,
+ id_warga 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
+ keterangan TEXT
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;";
+// 4. Tabel laporan_cepat yang dilaporkan hilang (Solusi Error kelola_laporan.php)
+$queries[] = "CREATE TABLE IF NOT EXISTS laporan_cepat (
+ id INT(11) AUTO_INCREMENT PRIMARY KEY,
+ nama_pelapor VARCHAR(100) NOT NULL,
+ perihal VARCHAR(255) NOT NULL,
+ pesan TEXT NOT NULL,
+ tanggal_kirim TIMESTAMP DEFAULT CURRENT_TIMESTAMP
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;";
+
+// Eksekusi semua skema baru
$success = 0;
foreach ($queries as $index => $sql) {
if (mysqli_query($conn, $sql)) {
@@ -56,9 +63,11 @@ foreach ($queries as $index => $sql) {
}
}
-echo "
✔ Selesai! Berhasil memperbarui $success skema tabel termasuk hak akses login.";
-echo "
Silakan coba login kembali menggunakan akun:
";
-echo "
- Username: admin | Password: admin
- Username: walikota | Password: walikota
";
-echo "
👉 Menuju Halaman Login";
+// Trik Aman: Tambah kolom mendadak jika tabel lama masih mengunci di server
+mysqli_query($conn, "ALTER TABLE penduduk_miskin ADD COLUMN IF NOT EXISTS umur INT(11) DEFAULT NULL;");
+mysqli_query($conn, "ALTER TABLE histori_bantuan ADD COLUMN IF NOT EXISTS id_warga INT(11) NOT NULL;");
+
+echo "
✔ Selesai! Seluruh struktur tabel UAS telah diselaraskan.";
+echo "
← Kembali ke Peta Utama";
echo "
";
?>
\ No newline at end of file