Приложение все еще не обновляет базу данных, когда строка содержит пробелы - PullRequest
1 голос
/ 08 февраля 2012

Медленно, но верно я думаю, что схожу с ума.Получив решение моей проблемы и приложение теперь также принимает пробелы, оно все равно не будет добавлять данные, содержащие пробелы, в мою базу данных mysql.Вот код:

NSString *strURL = [NSString stringWithFormat:@"http://www.bbc.com/phpFile.php?number=%@&name=%@&lastname=%@", number, firstName, lastName];
NSString *webStringURl = [strURL stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:strURL]];
NSString *strResult = [[NSString alloc] initWithData:dataURL encoding:NSUTF8StringEncoding];

NSLog(@"%@", strResult);
NSLog(@"%@", webStringURl);

NSLog даже говорит мне, что он делает именно то, что я ему говорю:

ProjectX[4003:15203] http://www.bbc.com/phpFile.php?number=11166&name=Yong%20Wang%20Ding&lastname=Blamblam

Он работает каждый раз, когда переменные не содержат пробелов.Когда я открываю php-файл в своем браузере и вручную вводю переменные (с пробелами), он добавляет их в мою базу данных.Я понятия не имею, почему он отказывается работать, когда делает то же самое (?) С моим приложением.

1 Ответ

5 голосов
/ 08 февраля 2012

Не похоже, что вы используете webStringURl (sic) нигде, кроме как в последнем утверждении NSLog.Вы уверены, что не хотели писать:

NSData *dataURL = [NSData dataWithContentsOfURL:[NSURL URLWithString:webStringURl];

... для третьей строки?

В данный момент вы вызываете dataWithContentsOfURL для вашей неэкранированной версии URL(который может содержать пробелы).

...