Files
UAS_WEBGIS_AnderiSaputra_D1…/kemiskinan/migrate_db.php
T
Anderi Saputra adec71e763 first commit
2026-06-10 17:00:19 +07:00

109 lines
3.5 KiB
PHP

<?php
$host = "localhost";
$user = "root";
$pass = "";
// Koneksi tanpa DB dulu untuk buat DB jika belum ada
$conn = new mysqli($host, $user, $pass);
if ($conn->connect_error) {
die("Koneksi gagal: " . $conn->connect_error);
}
// 1. Buat Database
$sql_db = "CREATE DATABASE IF NOT EXISTS db_kemiskinan";
if ($conn->query($sql_db) === TRUE) {
echo "Database db_kemiskinan siap.<br>";
} else {
echo "Error membuat database: " . $conn->error . "<br>";
}
// Gunakan database tersebut
$conn->select_db("db_kemiskinan");
// 2. Buat Tabel tb_admin
$sql_admin = "CREATE TABLE IF NOT EXISTS tb_admin (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
password VARCHAR(255) NOT NULL,
role VARCHAR(50) NOT NULL DEFAULT 'kemiskinan'
)";
if ($conn->query($sql_admin) === TRUE) {
echo "Tabel tb_admin siap.<br>";
} else {
echo "Error membuat tb_admin: " . $conn->error . "<br>";
}
// Insert admin kemiskinan if not exist
$check_admin = $conn->query("SELECT id FROM tb_admin WHERE username='admin'");
if ($check_admin->num_rows == 0) {
// Password "password"
$pw = password_hash("password", PASSWORD_DEFAULT);
$conn->query("INSERT INTO tb_admin (username, password, role) VALUES ('admin', '$pw', 'kemiskinan')");
echo "Akun 'admin' ditambahkan.<br>";
}
// 3. Buat Tabel tb_tempat_ibadah
$sql_ibadah = "CREATE TABLE IF NOT EXISTS tb_tempat_ibadah (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(255) DEFAULT NULL,
tipe_ibadah VARCHAR(50) DEFAULT 'Masjid',
latitude DOUBLE NOT NULL,
longitude DOUBLE NOT NULL,
radius_meter INT(11) NOT NULL,
kecamatan VARCHAR(100) DEFAULT NULL,
alamat TEXT DEFAULT NULL
)";
if ($conn->query($sql_ibadah) === TRUE) {
echo "Tabel tb_tempat_ibadah siap.<br>";
} else {
echo "Error membuat tb_tempat_ibadah: " . $conn->error . "<br>";
}
// 4. Buat Tabel tb_rumah
$sql_rumah = "CREATE TABLE IF NOT EXISTS tb_rumah (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
nama VARCHAR(255) NOT NULL,
alamat TEXT DEFAULT NULL,
keterangan TEXT DEFAULT NULL,
latitude DOUBLE NOT NULL,
longitude DOUBLE NOT NULL,
jumlah_anggota INT(11) DEFAULT 1,
penghasilan VARCHAR(60) DEFAULT NULL,
status_kepemilikan VARCHAR(50) DEFAULT NULL,
kategori_kemiskinan VARCHAR(50) DEFAULT 'Miskin',
status_bantuan VARCHAR(20) DEFAULT 'belum',
jenis_bantuan VARCHAR(200) DEFAULT NULL,
foto_rumah VARCHAR(255) DEFAULT NULL,
kecamatan VARCHAR(100) DEFAULT NULL,
tahun INT(11) DEFAULT 2026,
umur_kk INT(11) DEFAULT NULL,
pekerjaan VARCHAR(100) DEFAULT NULL,
status_rumah VARCHAR(100) DEFAULT NULL
)";
if ($conn->query($sql_rumah) === TRUE) {
echo "Tabel tb_rumah siap.<br>";
} else {
echo "Error membuat tb_rumah: " . $conn->error . "<br>";
}
// 5. Buat Tabel tb_bantuan_history
$sql_bantuan = "CREATE TABLE IF NOT EXISTS tb_bantuan_history (
id INT(11) AUTO_INCREMENT PRIMARY KEY,
rumah_id INT(11) NOT NULL,
tanggal DATE NOT NULL,
jenis_bantuan VARCHAR(200) DEFAULT NULL,
keterangan TEXT DEFAULT NULL,
petugas VARCHAR(100) DEFAULT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (rumah_id) REFERENCES tb_rumah(id) ON DELETE CASCADE
)";
if ($conn->query($sql_bantuan) === TRUE) {
echo "Tabel tb_bantuan_history siap.<br>";
} else {
echo "Error membuat tb_bantuan_history: " . $conn->error . "<br>";
}
echo "<br><h3>Migrasi Selesai!</h3>";
echo "<a href='index.php'>Kembali ke Halaman Utama</a>";
?>