Запись XML обратно на веб-сервер на iPhone - PullRequest
1 голос
/ 26 января 2012

Я пишу приложение для iPhone, которое будет использоваться для поиска информации о линии в местных барах / социальных сетях.В приложении я анализирую XML-файл с веб-сервера.Вот структура XML:

<?xml version="1.0" encoding="UTF-8"?>
<Bars>
    <Bar>Kam's</Bar>
    <Line>10</Line>
    <Bar>Cly's</Bar>
    <Line>10</Line>
    <Bar>Joe's</Bar>
    <Line>10</Line>
    <Bar>The Red Lion</Bar>
</Bars>

Эти данные затем отображаются в виде таблицы с показанной полосой и линией.Если пользователь выбирает элемент в таблице, появляется окно uiactionview и запрашивает у пользователя обновить информацию о строке для этой конкретной панели.Я знаю, как принимать данные от пользователей.

Проблема, с которой я столкнулся, и я действительно не знаю, с чего начать, - это выяснить, как переписать XML и поместить его обратно в то же место навеб сервер.Кто-нибудь знает учебник или, возможно, мог бы начать с этим?

Большое спасибо.

1 Ответ

2 голосов
/ 26 января 2012

Так что я отвечу на ваш прямой вопрос, но я должен отметить, что то, что вы опубликовали, не является правильным XML.Номера строк должны быть атрибутами или подузлами узлов Bar.Любое из следующего будет считаться правильным:

<?xml version="1.0" encoding="UTF-8"?>
<Bars>
    <Bar line="10">Kam's</Bar>
    <Bar line="10">Cly's</Bar>
    <Bar line="10">Joe's</Bar>
    <Bar line="10">The Red Lion</Bar>
</Bars>

или

<?xml version="1.0" encoding="UTF-8"?>
<Bars>
    <Bar>
        <name>Kam's</name>
        <line>10</line>
    </Bar>
    <Bar>
        <name>Cly's</name>
        <line>10</line>
    </Bar>
    <Bar>
        <name>Joe's</name>
        <line>10</line>
    </Bar>
    <Bar>
        <name>The Red Lion</name>
        <line>10</line>
    </Bar>
</Bars>

Есть даже больше способов представить это, но спецификация XML делает не честьпорядок узлов.Парсер обычно упорядочивает их по порядку, но нет гарантии, поэтому ваши Line узлы могут быть связаны с неправильными Bar.

В любом случае, при этом вам потребуется несколько различных инструментов, издесь слишком много подробностей, чтобы их можно было написать в ответе, поэтому я укажу вам документацию.

1) Для связи с сервером (либо получите XML, либо получите его) вы, вероятно,хочу использовать NSURLConnection. Вот руководство Apple по этому вопросу .

2) Для анализа XML Apple предоставляет только SAX-парсер .Это будет крутая кривая обучения для вас, и он также не может писать XML, что вам нужно сделать.Я собираюсь направить вас к этому другому посту StackOverflow , поскольку в нем более подробно рассказывается о поиске хорошего стороннего анализатора XML.

3) Если вы не знаете, какнастроить сервер, который может обслуживать XML-документ и принимать XML-содержимое POSTed, это еще один мешок с червями.Я бы посоветовал вам начать с простого стека "LAMP" и прочитать о PHP.

Cheers!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...