'Invalid JSON data']); break; } Database::insert('tblatestlocation', $data); echo json_encode(['status' => 'ok']); break; case 'PUT': $data = json_decode(file_get_contents("php://input"), true); if (!$data || !isset($data['tid'])) { http_response_code(400); echo json_encode(['error' => 'tid is required for update']); break; } $updateData = $data; unset($updateData['tid']); Database::update('tblatestlocation', $updateData, 'tid = :tid', [ 'tid' => $data['tid'] ]); echo json_encode(['status' => 'ok']); break; case 'DELETE': $data = json_decode(file_get_contents("php://input"), true); if (!$data || !isset($data['tid'])) { http_response_code(400); echo json_encode(['error' => 'tid is required for delete']); break; } Database::delete('tblatestlocation', 'tid = ?', [$data['tid']]); echo json_encode(['status' => 'ok']); break; default: http_response_code(405); echo json_encode(['error' => 'Method not allowed']); break; } } catch (Exception $e) { http_response_code(500); echo json_encode(['error' => 'Database error: ' . $e->getMessage()]); }