'Missing required fields: name, latitude, or longitude']); exit; } // Validate coordinates are numeric if (!is_numeric($data['latitude']) || !is_numeric($data['longitude'])) { http_response_code(400); echo json_encode(['error' => 'Latitude and longitude must be numeric values']); exit; } $db = getDB(); $stmt = $db->prepare('INSERT INTO markers (name, latitude, longitude, open_24_hours) VALUES (?, ?, ?, ?)'); $open_24_hours = isset($data['open_24_hours']) ? (int)$data['open_24_hours'] : 0; $stmt->execute([ $data['name'], (float)$data['latitude'], (float)$data['longitude'], $open_24_hours ]); echo json_encode([ 'success' => true, 'id' => $db->lastInsertId(), 'name' => $data['name'], 'latitude' => (float)$data['latitude'], 'longitude' => (float)$data['longitude'], 'open_24_hours' => $open_24_hours ]); } catch (Exception $e) { http_response_code(500); echo json_encode(['error' => $e->getMessage()]); } } else { http_response_code(405); echo json_encode(['error' => 'Method not allowed']); } ?>