First Commit
This commit is contained in:
+215
@@ -0,0 +1,215 @@
|
||||
<?php
|
||||
include 'koneksi.php';
|
||||
|
||||
// --- LOGIKA MODIFIKASI DATA (METODE POST) ---
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
|
||||
// 1. UPDATE POSISI (Fungsi asli lokasi.php)
|
||||
if (isset($_POST['action']) && $_POST['action'] === 'update_posisi') {
|
||||
$id = mysqli_real_escape_string($conn, $_POST['id']);
|
||||
$tabel = isset($_POST['tabel']) ? mysqli_real_escape_string($conn, $_POST['tabel']) : 'spbu';
|
||||
$lat = mysqli_real_escape_string($conn, $_POST['lat']);
|
||||
$lng = mysqli_real_escape_string($conn, $_POST['lng']);
|
||||
|
||||
$sql = "UPDATE $tabel SET latitude = '$lat', longitude = '$lng' WHERE id = '$id'";
|
||||
echo mysqli_query($conn, $sql) ? "Lokasi diperbarui" : "Gagal update: " . mysqli_error($conn);
|
||||
exit;
|
||||
}
|
||||
|
||||
// 2. HAPUS DATA
|
||||
else if (isset($_POST['hapus_id'])) {
|
||||
$id = mysqli_real_escape_string($conn, $_POST['hapus_id']);
|
||||
$tabel = mysqli_real_escape_string($conn, $_POST['tabel']);
|
||||
|
||||
$sql = "DELETE FROM $tabel WHERE id = '$id'";
|
||||
if (mysqli_query($conn, $sql)) {
|
||||
echo "Berhasil"; // Kirim teks sederhana saja
|
||||
} else {
|
||||
echo "Gagal hapus: " . mysqli_error($conn);
|
||||
}
|
||||
exit; // WAJIB ada exit agar tidak bentrok dengan kode GET di bawahnya
|
||||
}
|
||||
|
||||
// 3. SIMPAN/UPDATE SPBU (Fungsi asli update.php & simpan)
|
||||
else if (isset($_POST['nama_spbu'])) {
|
||||
$nama = mysqli_real_escape_string($conn, $_POST['nama_spbu']);
|
||||
$telp = mysqli_real_escape_string($conn, $_POST['no_telp']);
|
||||
$status = mysqli_real_escape_string($conn, $_POST['status_24jam']);
|
||||
$lat = $_POST['latitude'];
|
||||
$lng = $_POST['longitude'];
|
||||
|
||||
if (isset($_POST['id']) && !empty($_POST['id'])) {
|
||||
// Update jika ID ada (Logika update.php)
|
||||
$id = mysqli_real_escape_string($conn, $_POST['id']);
|
||||
$sql = "UPDATE spbu SET nama_spbu='$nama', no_telp='$telp', status_24jam='$status', latitude='$lat', longitude='$lng' WHERE id='$id'";
|
||||
} else {
|
||||
// Simpan Baru (Logika simpan)
|
||||
$sql = "INSERT INTO spbu (nama_spbu, no_telp, status_24jam, latitude, longitude) VALUES ('$nama', '$telp', '$status', '$lat', '$lng')";
|
||||
}
|
||||
echo mysqli_query($conn, $sql) ? "Data SPBU berhasil diproses" : "Gagal: " . mysqli_error($conn);
|
||||
exit;
|
||||
}
|
||||
|
||||
// 4. SIMPAN/UPDATE JALAN (LINE)
|
||||
else if (isset($_POST['type']) && $_POST['type'] === 'jalan') {
|
||||
$nama = mysqli_real_escape_string($conn, $_POST['nama_jalan']);
|
||||
$status = mysqli_real_escape_string($conn, $_POST['status_jalan']);
|
||||
|
||||
if (isset($_POST['id']) && !empty($_POST['id'])) {
|
||||
$id = mysqli_real_escape_string($conn, $_POST['id']);
|
||||
$sql = "UPDATE data_jalan SET nama_jalan='$nama', status_jalan='$status' WHERE id='$id'";
|
||||
echo mysqli_query($conn, $sql) ? "Berhasil diupdate" : "Error DB: " . mysqli_error($conn);
|
||||
} else {
|
||||
$panjang = mysqli_real_escape_string($conn, $_POST['panjang_m']);
|
||||
$geojson = mysqli_real_escape_string($conn, $_POST['geojson']);
|
||||
$sql = "INSERT INTO data_jalan (nama_jalan, status_jalan, panjang_m, geojson) VALUES ('$nama', '$status', '$panjang', '$geojson')";
|
||||
echo mysqli_query($conn, $sql) ? "Jalan Berhasil Disimpan" : "Error DB: " . mysqli_error($conn);
|
||||
}
|
||||
exit;
|
||||
}
|
||||
|
||||
// 5. SIMPAN/UPDATE PARSIL
|
||||
else if (isset($_POST['type']) && $_POST['type'] === 'parsil') {
|
||||
$pemilik = mysqli_real_escape_string($conn, $_POST['pemilik']);
|
||||
$status = mysqli_real_escape_string($conn, $_POST['status_milik']);
|
||||
|
||||
if (isset($_POST['id']) && !empty($_POST['id'])) {
|
||||
$id = mysqli_real_escape_string($conn, $_POST['id']);
|
||||
$sql = "UPDATE data_parsil SET pemilik='$pemilik', status_milik='$status' WHERE id='$id'";
|
||||
echo mysqli_query($conn, $sql) ? "Berhasil diupdate" : "Error DB: " . mysqli_error($conn);
|
||||
} else {
|
||||
$luas = mysqli_real_escape_string($conn, $_POST['luas_m2']);
|
||||
$geojson = mysqli_real_escape_string($conn, $_POST['geojson']);
|
||||
$sql = "INSERT INTO data_parsil (pemilik, status_milik, luas_m2, geojson) VALUES ('$pemilik', '$status', '$luas', '$geojson')";
|
||||
echo mysqli_query($conn, $sql) ? "Parsil Berhasil Disimpan" : "Error DB: " . mysqli_error($conn);
|
||||
}
|
||||
exit;
|
||||
}
|
||||
|
||||
// 6. SIMPAN/UPDATE RUMAH IBADAH
|
||||
else if (isset($_POST['type']) && $_POST['type'] === 'rumah_ibadah') {
|
||||
$nama = mysqli_real_escape_string($conn, $_POST['nama']);
|
||||
$jenis = mysqli_real_escape_string($conn, $_POST['jenis']);
|
||||
$alamat = mysqli_real_escape_string($conn, $_POST['alamat']);
|
||||
$radius = (int)$_POST['radius_meter'];
|
||||
$lat = $_POST['latitude'];
|
||||
$lng = $_POST['longitude'];
|
||||
|
||||
if (isset($_POST['id']) && !empty($_POST['id'])) {
|
||||
$id = mysqli_real_escape_string($conn, $_POST['id']);
|
||||
$sql = "UPDATE rumah_ibadah SET nama='$nama', jenis='$jenis', alamat='$alamat', radius_meter='$radius', latitude='$lat', longitude='$lng' WHERE id='$id'";
|
||||
echo mysqli_query($conn, $sql) ? "Berhasil diupdate" : "Error DB: " . mysqli_error($conn);
|
||||
} else {
|
||||
$sql = "INSERT INTO rumah_ibadah (nama, jenis, alamat, radius_meter, latitude, longitude) VALUES ('$nama', '$jenis', '$alamat', '$radius', '$lat', '$lng')";
|
||||
echo mysqli_query($conn, $sql) ? "Rumah Ibadah Berhasil Disimpan" : "Error DB: " . mysqli_error($conn);
|
||||
}
|
||||
exit;
|
||||
}
|
||||
|
||||
// 7. SIMPAN/UPDATE PENDUDUK MISKIN (RUMAH)
|
||||
else if (isset($_POST['type']) && $_POST['type'] === 'penduduk_miskin') {
|
||||
$nama = mysqli_real_escape_string($conn, $_POST['nama_kepala']);
|
||||
$jumlah_jiwa = (int)$_POST['jumlah_jiwa'];
|
||||
$lat = $_POST['latitude'];
|
||||
$lng = $_POST['longitude'];
|
||||
$ibadah_id = !empty($_POST['ibadah_id']) && $_POST['ibadah_id'] !== 'null' ? "'" . mysqli_real_escape_string($conn, $_POST['ibadah_id']) . "'" : "NULL";
|
||||
|
||||
$tanggal_lahir = !empty($_POST['tanggal_lahir']) ? "'" . mysqli_real_escape_string($conn, $_POST['tanggal_lahir']) . "'" : "NULL";
|
||||
$pendidikan = mysqli_real_escape_string($conn, $_POST['pendidikan'] ?? '');
|
||||
$riwayat_penyakit = mysqli_real_escape_string($conn, $_POST['riwayat_penyakit'] ?? '');
|
||||
$penghasilan_perbulan = mysqli_real_escape_string($conn, $_POST['penghasilan_perbulan'] ?? '');
|
||||
$status_laporan = mysqli_real_escape_string($conn, $_POST['status_laporan'] ?? 'Terverifikasi');
|
||||
|
||||
if (isset($_POST['id']) && !empty($_POST['id'])) {
|
||||
$id = mysqli_real_escape_string($conn, $_POST['id']);
|
||||
$sql = "UPDATE penduduk_miskin SET nama_kepala='$nama', jumlah_jiwa='$jumlah_jiwa', latitude='$lat', longitude='$lng', ibadah_id=$ibadah_id, tanggal_lahir=$tanggal_lahir, pendidikan='$pendidikan', riwayat_penyakit='$riwayat_penyakit', penghasilan_perbulan='$penghasilan_perbulan', status_laporan='$status_laporan' WHERE id='$id'";
|
||||
echo mysqli_query($conn, $sql) ? "Berhasil diupdate" : "Error DB: " . mysqli_error($conn);
|
||||
} else {
|
||||
$sql = "INSERT INTO penduduk_miskin (nama_kepala, jumlah_jiwa, latitude, longitude, ibadah_id, tanggal_lahir, pendidikan, riwayat_penyakit, penghasilan_perbulan, status_laporan) VALUES ('$nama', '$jumlah_jiwa', '$lat', '$lng', $ibadah_id, $tanggal_lahir, '$pendidikan', '$riwayat_penyakit', '$penghasilan_perbulan', '$status_laporan')";
|
||||
echo mysqli_query($conn, $sql) ? "Penduduk Miskin Berhasil Disimpan" : "Error DB: " . mysqli_error($conn);
|
||||
}
|
||||
exit;
|
||||
}
|
||||
|
||||
// 8. CATAT BANTUAN
|
||||
else if (isset($_POST['type']) && $_POST['type'] === 'catat_bantuan') {
|
||||
$penduduk_id = (int)($_POST['penduduk_id'] ?? 0);
|
||||
$deskripsi_bantuan = mysqli_real_escape_string($conn, $_POST['deskripsi_bantuan'] ?? '');
|
||||
$tanggal = date('Y-m-d');
|
||||
|
||||
$sql = "INSERT INTO histori_bantuan (penduduk_id, tanggal, deskripsi_bantuan) VALUES ('$penduduk_id', '$tanggal', '$deskripsi_bantuan')";
|
||||
echo mysqli_query($conn, $sql) ? "Bantuan tersimpan" : "Error DB: " . mysqli_error($conn);
|
||||
exit;
|
||||
}
|
||||
|
||||
// 9. VERIFIKASI WARGA
|
||||
else if (isset($_POST['type']) && $_POST['type'] === 'verifikasi_warga') {
|
||||
$id = (int)($_POST['id'] ?? 0);
|
||||
$sql = "UPDATE penduduk_miskin SET status_laporan = 'Terverifikasi' WHERE id = '$id'";
|
||||
if (mysqli_query($conn, $sql)) {
|
||||
echo json_encode(["status" => "success"]);
|
||||
} else {
|
||||
echo json_encode(["status" => "error", "message" => mysqli_error($conn)]);
|
||||
}
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
// --- LOGIKA AMBIL DATA (METODE GET) ---
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'GET') {
|
||||
$data = ['spbu' => [], 'jalan' => [], 'parsil' => []];
|
||||
|
||||
// Ambil SPBU
|
||||
$q_spbu = mysqli_query($conn, "SELECT * FROM spbu");
|
||||
while($r = mysqli_fetch_assoc($q_spbu)) {
|
||||
$r['latitude'] = (float)$r['latitude'];
|
||||
$r['longitude'] = (float)$r['longitude'];
|
||||
$data['spbu'][] = $r;
|
||||
}
|
||||
|
||||
// Ambil Jalan
|
||||
$q_jalan = mysqli_query($conn, "SELECT * FROM data_jalan");
|
||||
while($r = mysqli_fetch_assoc($q_jalan)) $data['jalan'][] = $r;
|
||||
|
||||
// Ambil Parsil
|
||||
$q_parsil = mysqli_query($conn, "SELECT * FROM data_parsil");
|
||||
while($r = mysqli_fetch_assoc($q_parsil)) $data['parsil'][] = $r;
|
||||
|
||||
// Ambil Rumah Ibadah
|
||||
$q_ibadah = mysqli_query($conn, "SELECT * FROM rumah_ibadah");
|
||||
if($q_ibadah) {
|
||||
$data['rumah_ibadah'] = [];
|
||||
while($r = mysqli_fetch_assoc($q_ibadah)) {
|
||||
$r['latitude'] = (float)$r['latitude'];
|
||||
$r['longitude'] = (float)$r['longitude'];
|
||||
$r['radius_meter'] = (int)$r['radius_meter'];
|
||||
$data['rumah_ibadah'][] = $r;
|
||||
}
|
||||
}
|
||||
|
||||
// Ambil Penduduk Miskin
|
||||
$q_penduduk = mysqli_query($conn, "SELECT * FROM penduduk_miskin");
|
||||
if($q_penduduk) {
|
||||
$data['penduduk_miskin'] = [];
|
||||
while($r = mysqli_fetch_assoc($q_penduduk)) {
|
||||
$r['latitude'] = (float)$r['latitude'];
|
||||
$r['longitude'] = (float)$r['longitude'];
|
||||
|
||||
// Ambil histori bantuan untuk penduduk ini
|
||||
$p_id = $r['id'];
|
||||
$r['histori_bantuan'] = [];
|
||||
$q_histori = mysqli_query($conn, "SELECT tanggal, deskripsi_bantuan FROM histori_bantuan WHERE penduduk_id = '$p_id' ORDER BY tanggal DESC");
|
||||
if ($q_histori) {
|
||||
while($h = mysqli_fetch_assoc($q_histori)) {
|
||||
$r['histori_bantuan'][] = $h;
|
||||
}
|
||||
}
|
||||
|
||||
$data['penduduk_miskin'][] = $r;
|
||||
}
|
||||
}
|
||||
|
||||
header('Content-Type: application/json');
|
||||
echo json_encode($data);
|
||||
}
|
||||
?>
|
||||
Reference in New Issue
Block a user