2012-08-03 86 views
0

我从iPhone应用程序将数据发送到服务器,但在读到文章的字符串崩溃的应用程序,不往前走发布数据到服务器

-(void)submitSurveyAnswers{ 


    NSString*survey_question_response_id="1"; 
    NSString*[email protected]"1"; 

    NSString *question_id [email protected]"1"; 
    NSString *survey_response_answer_id [email protected]"1"; 
    NSString *post =[[NSString alloc] initWithFormat:@"survey_question_response_id=%@&survey_id=%@&question_id=%@&survey_response_answer_id=%@",survey_question_response_id,survey_id,question_id,survey_response_answer_id]; 
    NSLog(post); 
    NSURL *url=[NSURL URLWithString:@"http://myserver-solutions.com/app/surveyAnswer.php?"]; 

    NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES]; 

NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]]; 

NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init] ; 
[request setURL:url]; 
[request setHTTPMethod:@"POST"]; 
[request setValue:postLength forHTTPHeaderField:@"Content-Length"]; 
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"]; 
[request setHTTPBody:postData]; 


NSError *error; 
NSURLResponse *response; 
NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; 

NSString *data=[[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding]; 
NSLog(@"%@",data); 

} 
+0

那么它在哪里崩溃? – 2012-08-03 06:37:41

+0

之后survey_response_id,当NSString *后启动 – user1567956 2012-08-03 06:39:09

回答

1

您已经创建了一个字符串,下面的方法:

NSString*survey_question_response_id="1"; //Missing '@' while initializing string 

应该像下面的方式创建:

NSString*[email protected]"1"; //Added '@' while initializing string 
+0

是它现在是固定的,但它没有输入数据在服务器 – user1567956 2012-08-03 06:47:12

0
NSString*survey_question_response_id="1"; 

是错误的。普通双引号之间的字符串是C字符串(0终止的字符指针),并且不是有效的NSString实例。我确信你想要1.学会使用调试器2.编写

NSString *survey_question_response_id = @"1"; 

改为。

相关问题