connect_error) { http_response_code(500); echo json_encode(['status' => 'gagal', 'pesan' => 'Koneksi database gagal: ' . $conn->connect_error]); exit; } $conn->select_db($db); $conn->set_charset('utf8mb4'); // Auto-create tables $conn->query(" CREATE TABLE IF NOT EXISTS `tb_jalan` ( `id` INT NOT NULL AUTO_INCREMENT, `nama_jalan` VARCHAR(100) NOT NULL, `status_jalan` ENUM('Nasional','Provinsi','Kabupaten') NOT NULL, `panjang_jalan` DECIMAL(12,2) NOT NULL DEFAULT '0.00', `geojson` JSON NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci "); $conn->query(" CREATE TABLE IF NOT EXISTS `tb_parsil` ( `id` INT NOT NULL AUTO_INCREMENT, `nama_parsil` VARCHAR(100) NOT NULL, `status_kepemilikan` ENUM('SHM','HGB','HGU','HP') NOT NULL, `luas_tanah` DECIMAL(16,4) NOT NULL DEFAULT '0.0000', `geojson` JSON NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci "); function getConnection() { global $conn; return $conn; } ?>