Pergunta

No PHP eu tenho:

$result = mysql_query($query);
// if successful query, return the records
if ($result)
{
    // if not empty result, return array of records
    if (mysql_num_rows($result))
    {
        $records = array();
        while ($row = mysql_fetch_assoc($result))
        {
            $records[] = $row;
        }
        return $records;
    }
     }

Em Objective-C - Após o POST Eu tenho o seguinte código ...

NSURLResponse *newStr = [[NSURLResponse alloc] init];
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:&newStr error:nil];

returnData é igual à "matriz" literal, e não o conteúdo de $ registros []

Foi útil?

Solução

Você deve publicando os dados em um formato plist tipo XML se você pode, então ele pode ser nativamente interpretado por classes de cacau como NSArray e NSDictionary. NSPropertyListSerializer é capaz de produzir matrizes e dicionários mutáveis ??ou imutáveis ??a partir de um arquivo ou de um objeto NSData contendo dados serializados no formato plist.

NSDictionary também pode ler arquivos neste formato:

"key" = "value";
"key2" = "value2";

Da mesma forma, NSArray pode ler arquivos neste formato:

(
     "value1",
     "value2",
     "value3",
     "30",
     "value5"
);

Na verdade, eu acho que se as cordas não contêm espaços, as aspas são opcionais (mas eu acho que eles forçaria tipos string).

Confira esta URL para mais informações sobre listas de propriedades ASCII oldschool. Eles são somente leitura, mas, novamente eles são fáceis o suficiente para gerar manualmente ou sistematicamente.

Outras dicas

Você precisa formatar sua matriz em algum formato que você pode ler em Objective-C. Eu recomendo usar JSON .

Se você tiver PHP 5.2, você pode usar o construído em funções para codificar os dados. Por exemplo:

echo json_encode($records);

No lado do Objective-C, você pode usar TouchJSON para decodificar / codificação JSON.

No lado do PHP que você precisa para serializar a matriz para um formato como JSON ou XML em vez de apenas printing-lo. No lado do iPhone, então, desserializar o objeto NSData usando a biblioteca apropriada

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top