61 lines
1.9 KiB
PHP
61 lines
1.9 KiB
PHP
<?php
|
|
/**
|
|
* simpan_pusat.php — Simpan / Update Rumah Ibadah
|
|
*
|
|
* POST params:
|
|
* id - ID (jika update, opsional)
|
|
* name - Nama rumah ibadah
|
|
* address - Alamat
|
|
* kas - Jumlah kas/dana (Rp)
|
|
* lat - Latitude
|
|
* lng - Longitude
|
|
* radius - Radius dalam meter
|
|
* update - "1" jika update existing record
|
|
*/
|
|
|
|
require_once 'koneksi.php';
|
|
|
|
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
|
|
echo json_encode(['success' => false, 'message' => 'Hanya menerima POST']);
|
|
exit;
|
|
}
|
|
|
|
$id = intval($_POST['id'] ?? 0);
|
|
$name = $conn->real_escape_string(strip_tags($_POST['name'] ?? ''));
|
|
$address = $conn->real_escape_string(strip_tags($_POST['address'] ?? ''));
|
|
$kas = floatval($_POST['kas'] ?? 0);
|
|
$lat = floatval($_POST['lat'] ?? 0);
|
|
$lng = floatval($_POST['lng'] ?? 0);
|
|
$radius = intval($_POST['radius'] ?? 300);
|
|
$isUpdate = isset($_POST['update']) && $_POST['update'] === '1';
|
|
|
|
if (empty($name)) {
|
|
echo json_encode(['success' => false, 'message' => 'Nama wajib diisi']);
|
|
exit;
|
|
}
|
|
|
|
if ($radius < 50) $radius = 50;
|
|
|
|
if ($id > 0 || $isUpdate) {
|
|
$sql = "UPDATE religious_centers
|
|
SET name='$name', address='$address', kas=$kas, latitude=$lat, longitude=$lng, radius=$radius, updated_at=NOW()
|
|
WHERE id=$id";
|
|
|
|
if ($conn->query($sql)) {
|
|
echo json_encode(['success' => true, 'id' => $id, 'action' => 'updated']);
|
|
} else {
|
|
echo json_encode(['success' => false, 'message' => $conn->error]);
|
|
}
|
|
} else {
|
|
$sql = "INSERT INTO religious_centers (name, address, kas, latitude, longitude, radius)
|
|
VALUES ('$name', '$address', $kas, $lat, $lng, $radius)";
|
|
|
|
if ($conn->query($sql)) {
|
|
$newId = $conn->insert_id;
|
|
echo json_encode(['success' => true, 'id' => $newId, 'action' => 'inserted']);
|
|
} else {
|
|
echo json_encode(['success' => false, 'message' => $conn->error]);
|
|
}
|
|
}
|
|
|
|
$conn->close(); |