From 6c0bc590dd5a53573a00afe942a2d40571a82536 Mon Sep 17 00:00:00 2001 From: YaraAqmal Date: Sun, 7 Jun 2026 13:42:40 +0700 Subject: [PATCH] Initial commit - Fresh Clean Code --- LinkWebsite_JalanRusak_Marker.txt | 1 + api_jalan_rusak.php | 53 ++++++ config.php | 26 +++ index.html | 258 ++++++++++++++++++++++++++++++ uploads/img_1778518733.jpg | Bin 0 -> 4097 bytes uploads/img_1778520128.jpg | Bin 0 -> 9708 bytes 6 files changed, 338 insertions(+) create mode 100644 LinkWebsite_JalanRusak_Marker.txt create mode 100644 api_jalan_rusak.php create mode 100644 config.php create mode 100644 index.html create mode 100644 uploads/img_1778518733.jpg create mode 100644 uploads/img_1778520128.jpg diff --git a/LinkWebsite_JalanRusak_Marker.txt b/LinkWebsite_JalanRusak_Marker.txt new file mode 100644 index 0000000..ad54515 --- /dev/null +++ b/LinkWebsite_JalanRusak_Marker.txt @@ -0,0 +1 @@ +https://sigwebsite.free.je/JalanRusak_Marker/ \ No newline at end of file diff --git a/api_jalan_rusak.php b/api_jalan_rusak.php new file mode 100644 index 0000000..574b8d6 --- /dev/null +++ b/api_jalan_rusak.php @@ -0,0 +1,53 @@ +query("SELECT * FROM jalan_rusak ORDER BY created_at DESC"); + $data = []; + while ($row = $result->fetch_assoc()) { + $data[] = $row; + } + sendResponse(true, 'Data berhasil dimuat', $data); +} +elseif ($method === 'POST' && $action === 'create') { + $nama = $_POST['nama'] ?? ''; + $lat = $_POST['latitude'] ?? 0; + $lng = $_POST['longitude'] ?? 0; + $alamat = $_POST['alamat'] ?? ''; + $catatan = $_POST['catatan'] ?? ''; + + $foto_name = ''; + // Logika Upload File Foto + if (isset($_FILES['foto_file']) && $_FILES['foto_file']['error'] === UPLOAD_ERR_OK) { + $ext = pathinfo($_FILES['foto_file']['name'], PATHINFO_EXTENSION); + $foto_name = 'img_' . time() . '.' . $ext; + move_uploaded_file($_FILES['foto_file']['tmp_name'], $upload_dir . $foto_name); + } + + $stmt = $conn->prepare("INSERT INTO jalan_rusak (nama, latitude, longitude, alamat, catatan, foto) VALUES (?, ?, ?, ?, ?, ?)"); + $stmt->bind_param("sddsss", $nama, $lat, $lng, $alamat, $catatan, $foto_name); + + if ($stmt->execute()) { + sendResponse(true, 'Laporan berhasil disimpan'); + } else { + sendResponse(false, 'Gagal menyimpan ke database'); + } +} +elseif ($method === 'DELETE' && $action === 'delete') { + $id = intval($_GET['id']); + // Opsional: Hapus file fisik foto di sini jika diperlukan + $stmt = $conn->prepare("DELETE FROM jalan_rusak WHERE id=?"); + $stmt->bind_param("i", $id); + $stmt->execute(); + sendResponse(true, 'Laporan dihapus'); +} +?> \ No newline at end of file diff --git a/config.php b/config.php new file mode 100644 index 0000000..d2e8a3a --- /dev/null +++ b/config.php @@ -0,0 +1,26 @@ +connect_error) { + die(json_encode(['success' => false, 'message' => 'Koneksi gagal: ' . $conn->connect_error])); +} + +$conn->set_charset("utf8"); + +function sendResponse($success, $message, $data = null) { + echo json_encode(['success' => $success, 'message' => $message, 'data' => $data]); + exit; +} +?> \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..dc5d221 --- /dev/null +++ b/index.html @@ -0,0 +1,258 @@ + + + + + Sistem Pelaporan Jalan Rusak V3 - Full Draggable + + + + + + + +
+
+
+
+ + + +
+ + Tips: Semua marker (baru maupun lama) dapat digeser untuk menyesuaikan posisi koordinat secara presisi. +
+
+ +
+ +
+
+
+ + + + + \ No newline at end of file diff --git a/uploads/img_1778518733.jpg b/uploads/img_1778518733.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a4ddb3ec4a4bad3e050b593cdcba7010e6eb6706 GIT binary patch literal 4097 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 Sz~t7prdzhOHTCA{m;VB^o_(1B literal 0 HcmV?d00001 diff --git a/uploads/img_1778520128.jpg b/uploads/img_1778520128.jpg new file mode 100644 index 0000000000000000000000000000000000000000..583f9ada925dbcef9751e357f60d06f3cb8e1fa6 GIT binary patch literal 9708 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 literal 0 HcmV?d00001