Как получить результаты запроса MySQL, используя -initWithContentsOfURL? - PullRequest
0 голосов
/ 19 июня 2009

У меня есть php-скрипт на стороне сервера, который извлекает результаты из таблицы MySQL. Я пытаюсь получить эти результаты из приложения для iPhone OS. Я использую следующий метод:

NSURL *myURL = [NSURL URLWithString:@"http://www.someurl.com/login.php?id=anid"];
NSArray *sqlResults = [[NSArray alloc] initWithContentsOfURL:myURL];

//Show me what went into the Array
NSLog(@"%@", [sqlResults ObjectAtIndex:0]);

* NSLog внизу - это я пытаюсь увидеть, что только что произошло. Заявление NSLog печатает (нуль), хотя - так что я застрял. Моя проблема в том, что я не знаю, какого черта я пытаюсь сделать с NSArray результатов, и я, вероятно, делаю много вещей неправильно. Подразумевается ли подключение к интернету (есть сотовая связь и Wi-Fi)? Итак, мой вопрос: что я должен делать, чтобы получить результаты запросов MySQL, используя -initWithContentsOfURL?

Ответы [ 2 ]

2 голосов
/ 19 июня 2009

В каком формате ваш PHP-скрипт возвращает результаты MySQL? Похоже, что [NSArray initWithContentsOfURL:] требует, чтобы данные были в очень специфическом формате «списка свойств». Вы пытались увидеть, какой вывод вы получите, если вместо этого используете NSString?:

[NSString initWithContentsOfURL:encoding:error:]

Это должно как минимум показать вам, что вы получаете от своего PHP-скрипта. Наконец, взгляните на список свойств . Вам может потребоваться выполнить преобразование в сценарии на стороне сервера или проанализировать формат набора результатов PHP на iPhone, как предложил Б.Дж. Гомер.

1 голос
/ 19 июня 2009

Согласно документации на -[NSArray initWithContentsOfURL:] скажем;

Представление массива на местоположение, указанное aURL, должно содержать только объекты списка свойств (NSString, NSData, NSArray или NSDictionary объекты).

Насколько я понимаю, это означает, что он должен быть в формате plist. Если ваши результаты не в формате plist, попробуйте использовать -[NSString initWithContentsOfURL:]. Если вы хотите разделить его на строки, вы можете позвонить [downloadedString componentsSeparatedByString:@"\n"]

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