WebGIS Pemetaan SPBU
+Menampilkan, menambah, mengedit, dan menghapus titik SPBU menggunakan marker Leaflet.
+diff --git a/hapus_kavling.php b/hapus_kavling.php index 2c8a196..a463071 100644 --- a/hapus_kavling.php +++ b/hapus_kavling.php @@ -1,4 +1,8 @@ query("DELETE FROM kavling WHERE id=$_POST[id]"); -?> \ No newline at end of file +require_once 'koneksi.php'; +$id = (int)($_POST['id'] ?? 0); +$stmt = $conn->prepare("DELETE FROM kavling WHERE id=?"); +$stmt->bind_param('i', $id); +$stmt->execute(); +echo json_encode(['status' => 'success']); +?> diff --git a/index.html b/index.html index db9ccb5..49a59e4 100644 --- a/index.html +++ b/index.html @@ -1,485 +1,153 @@ - +
- -Kumpulan tugas WebGIS kelas milik Freya Martines
+Menampilkan, menambah, mengedit, dan menghapus titik SPBU menggunakan marker Leaflet.
+Manajemen data spasial jalan dalam bentuk polyline dan data kavling/tanah dalam bentuk polygon.
+Menampilkan layer group SPBU berdasarkan status buka 24 jam dan tidak buka 24 jam.
+Menampilkan batas kecamatan Kota Pontianak dari file GeoJSON beserta nama kecamatan dan populasi.
+/Tugas1/, /Tugas2/, /Tugas3/, dan /Tugas4/ dari domain utama Coolify.
+ Target koneksi: " . htmlspecialchars($host) . ":" . htmlspecialchars((string)$port) . ", database: " . htmlspecialchars($db) . ", user: " . htmlspecialchars($user) . "
"; + +$conn = new mysqli($host, $user, $pass, $db, $port); +if ($conn->connect_error) { + die("Koneksi gagal: " . htmlspecialchars($conn->connect_error) . "
"); +} +$conn->set_charset('utf8mb4'); + +$sqlFile = __DIR__ . '/database.sql'; +if (!file_exists($sqlFile)) { + die("File database.sql tidak ditemukan.
"); +} + +$sql = file_get_contents($sqlFile); +$sql = preg_replace('/CREATE\s+DATABASE\s+IF\s+NOT\s+EXISTS\s+`?[^`\s;]+`?.*?;/is', '', $sql); +$sql = preg_replace('/CREATE\s+DATABASE\s+`?[^`\s;]+`?.*?;/is', '', $sql); +$sql = preg_replace('/USE\s+`?[^`\s;]+`?\s*;/is', '', $sql); + +if ($conn->multi_query($sql)) { + do { + if ($result = $conn->store_result()) { $result->free(); } + } while ($conn->more_results() && $conn->next_result()); + + if ($conn->errno) { + echo "Ada error saat import: " . htmlspecialchars($conn->error) . "
"; + } else { + echo "Database berhasil diimport/reset.
"; + echo "Setelah ini, hapus file install_database.php dari repo lalu redeploy.
Import gagal: " . htmlspecialchars($conn->error) . "
"; +} +$conn->close(); +?> diff --git a/koneksi.php b/koneksi.php new file mode 100644 index 0000000..af017ed --- /dev/null +++ b/koneksi.php @@ -0,0 +1,23 @@ +connect_error) { + http_response_code(500); + die(json_encode([ + 'status' => 'error', + 'message' => 'Koneksi database gagal: ' . $conn->connect_error + ])); +} + +$conn->set_charset('utf8mb4'); +?> diff --git a/simpan.php b/simpan.php index 91b03f6..e7b24b4 100644 --- a/simpan.php +++ b/simpan.php @@ -1,12 +1,12 @@ query("INSERT INTO spbu (nama, wa, buka, lat, lng) -VALUES ('$nama','$wa','$buka','$lat','$lng')"); -?> \ No newline at end of file +require_once 'koneksi.php'; +$nama = $_POST['nama'] ?? ''; +$wa = $_POST['wa'] ?? ''; +$buka = $_POST['buka'] ?? 'Tidak'; +$lat = $_POST['lat'] ?? 0; +$lng = $_POST['lng'] ?? 0; +$stmt = $conn->prepare("INSERT INTO spbu (nama, wa, buka, lat, lng) VALUES (?, ?, ?, ?, ?)"); +$stmt->bind_param('sssdd', $nama, $wa, $buka, $lat, $lng); +$stmt->execute(); +echo json_encode(['status' => 'success']); +?>