2013-12-20 2 views
0

Я пытаюсь передать переменную на php-страницу, но она не передается на страницу или не сохраняется в базе данных. См. Комментарии в следующем коде:Отправка переменных в php из объекта C Cocoa

NSString *[email protected]"fname"; 
NSString *[email protected]"lname"; 
NSString *urlString = [[NSString alloc] initWithFormat:@"http://localhost:8888/Test-objective%20c%20/send.php?first_name=%@&last_name=%@",fname,lname]; 

NSLog(urlString); 

NSURL *url = [ NSURL URLWithString:urlString]; 
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; 
NSAlert *dq= [[NSAlert alloc] init]; 
[dq setMessageText:urlString]; 
[dq runModal]; 
[request setHTTPMethod:@"GET"]; 

NSURLConnection* connection = [[NSURLConnection alloc] initWithRequest:request delegate:self]; 
[connection start]; 

NSAlert *d= [[NSAlert alloc] init]; 
[d setMessageText:@"connection"]; 
[d runModal]; 

//This is the part I don't understand. 
//This line has a problem: 
NSString *urlString = [[NSString alloc] initWithFormat:@"http://localhost:8888/Test-objectivec/send.php?first_name=%@&last_name=%@",fname,lname]; 

//But when I replace it with 
NSString *urlString = @"http://localhost:8888/Test-objectivec/send.php?first_name=My&last_name=nme"; 

//Then it works just fine. 

Кроме того, может ли кто-нибудь сказать мне, как увидеть ответ с сервера?

+0

Измените журнал на 'NSLog (@" строка URL:% @ ", urlString);'. Отладка, все создано? – Wain

ответ

0
NSString *[email protected]"fname"; 
NSString *[email protected]"lname"; 
NSString *urlString = [[NSString alloc] 

NSString *urlString = [[NSString alloc]initWithFormat:@"http://localhost:8888/Test-objectivec/send.php?first_name=%@&last_name=%@",fnamelname]; 
  • Удалить белое пространство от "Тест-цель C", которая преобразуется% 20 это создает проблему.
+0

% 20 рассматривается как специальный в объекте c –

+0

Я удалил пробелы, но переменные не были вставлены в базу данных. Какая проблема, когда я даю значение через переменные, иначе через static first_name и last_name, как я объяснил в своем вопросе, прежде чем он отлично работает. – mano

+0

SO ADD %% В МЕСТЕ% –

0

При создании строки с форматом вы должны быть осторожны с особыми символами в формате. Особенно в вашем случае %. Формат должен быть:

NSString *urlString = [[NSString alloc] initWithFormat:@"http://localhost:8888/Test-objective%%20c%%20/send.php?first_name=%@&last_name=%@",fname,lname]; 
+0

код работает нормально, когда я использовал NSString * urlString = @ "http: // localhost: 8888/Test- ? ObjectiveC/send.php first_name = My & last_name = NME "; но при использовании NSString * urlString = [[NSString alloc] initWithFormat: @ "http: // localhost: 8888/Test-objectivec/send.php? first_name =% @ & last_name =% @", fnamelname] ;. он не работает. – mano

+0

Ссылки в вашем комментарии недействительны. Добавьте обновления кода в конец вашего вопроса (и проверьте форматирование). – Wain

+0

Я добавлю «Это то, что я не понимаю» в моем вопросе, главная проблема, которую я не понимаю – mano

Смежные вопросы