Files
UAS-SIG-WebGIS-Poverty-Mapping/save_point.php
T
2026-06-13 13:38:52 +07:00

68 lines
2.8 KiB
PHP

<?php
header('Content-Type: application/json');
ini_set('display_errors', 0);
include 'db.php';
function esc($value) {
global $conn;
return $conn->real_escape_string(trim($value ?? ''));
}
// Check database connection
if (!isset($conn) || $conn->connect_error) {
http_response_code(500);
echo json_encode(['success' => false, 'error' => 'Database connection failed: ' . ($conn->connect_error ?? 'Unknown error')]);
exit;
}
$tipe = $_POST['tipe'] ?? 'point';
$lat = isset($_POST['lat']) ? floatval($_POST['lat']) : null;
$lng = isset($_POST['lng']) ? floatval($_POST['lng']) : null;
if ($lat === null || $lng === null) {
http_response_code(400);
echo json_encode(['success' => false, 'error' => 'Latitude/longitude tidak ditemukan']);
exit;
}
if ($tipe === 'worship') {
$nama = esc($_POST['nama']);
$jenis = esc($_POST['jenis']);
$alamat = esc($_POST['alamat']);
$kontak = esc($_POST['kontak']);
$no_wa = esc($_POST['no_wa']);
$kegiatan = esc($_POST['kegiatan']);
$kapasitas = isset($_POST['kapasitas']) ? intval($_POST['kapasitas']) : 0;
$radius_meter = isset($_POST['radius_meter']) ? intval($_POST['radius_meter']) : 100;
$sql = "INSERT INTO data_unified (tipe, nama, jenis, alamat, kontak, no_wa, kegiatan, kapasitas, radius_meter, latitude, longitude)
VALUES ('worship', '$nama', '$jenis', '$alamat', '$kontak', '$no_wa', '$kegiatan', $kapasitas, $radius_meter, $lat, $lng)";
} elseif ($tipe === 'poor_house') {
$nama_keluarga = esc($_POST['nama_keluarga']);
$alamat = esc($_POST['alamat']);
$jumlah_anggota = isset($_POST['jumlah_anggota']) ? intval($_POST['jumlah_anggota']) : 0;
$kondisi_rumah = esc($_POST['kondisi_rumah']);
$sumber_penghasilan = esc($_POST['sumber_penghasilan']);
$kebutuhan_prioritas = esc($_POST['kebutuhan_prioritas']);
$status_bantuan = esc($_POST['status_bantuan']);
$sql = "INSERT INTO data_unified (tipe, nama_kepala_keluarga, alamat, jumlah_anggota, kondisi_rumah, sumber_penghasilan, kebutuhan_prioritas, status_bantuan, latitude, longitude)
VALUES ('poor_house', '$nama_keluarga', '$alamat', $jumlah_anggota, '$kondisi_rumah', '$sumber_penghasilan', '$kebutuhan_prioritas', '$status_bantuan', $lat, $lng)";
} else {
$nama = esc($_POST['nama']);
$no_wa = esc($_POST['no_wa']);
$buka = esc($_POST['buka']);
$sql = "INSERT INTO data_unified (tipe, nama, no_wa, buka_24jam, latitude, longitude)
VALUES ('point', '$nama', '$no_wa', '$buka', $lat, $lng)";
}
if ($conn->query($sql) === TRUE) {
echo json_encode(['success' => true, 'id' => $conn->insert_id]);
} else {
http_response_code(400);
error_log('save_point.php error: ' . $conn->error . ' -- SQL: ' . $sql);
echo json_encode(['success' => false, 'error' => $conn->error]);
}
?>