-1

I am new to IOS i need to know how to pass NSString as parameter in nsurlconnection POST method,i passed string but it become empty

viewdidload:

 NSString *parseURL =@"http:url";
    NSString *encodeurl =[parseURL stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
    NSURL *url = [NSURL URLWithString:encodeurl];
    NSData *data = [NSData dataWithContentsOfURL:url];
    if(data){
        NSError *error;
        NSDictionary *json1 = [NSJSONSerialization JSONObjectWithData:data options: kNilOptions error:&error];


        arrMsg = [json1 valueForKeyPath:@"Branches.branch_name"];

        arrmsg1 =[json1 valueForKeyPath:@"Branches.id"];
        NSString *str = [arrmsg1 componentsJoinedByString:@","];

        NSLog(@"%@",str);

        [self sendDataToServer :@"POST"];
         }

post method: In post method i passed the string as parameter

-(void) sendDataToServer : (NSString *) method{
    //NSString *str = [arrmsg1 componentsJoinedByString:@","];

    NSString *post = [NSString stringWithFormat:@"branch_id=%@",str];
    NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
    NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[post length]];

    NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:URL]];


    [request setHTTPMethod:@"POST"];
    [request setValue:postLength forHTTPHeaderField:@"Content-Length"];
    [request setHTTPBody:postData];

    NSURLConnection *theConnection = [NSURLConnection connectionWithRequest:request delegate:self];

    if( theConnection ){
        // indicator.hidden = NO;
        mutableData = [[NSMutableData alloc]init];
    }
}
A.sonu
  • 159
  • 10
  • 1
    you're not passing the variable `str` to your `sendDataToServer:` method, so obviously `str` is `nil`. – dirkgroten May 02 '16 at 11:16
  • Please See This Link :- http://stackoverflow.com/questions/36905484/ios-sending-post-method-data-can-access-in-php-as-get-method/36905691#36905691 – Rajesh May 02 '16 at 12:25

1 Answers1

0

you can do like

    arrMsg = [json1 valueForKeyPath:@"Branches.branch_name"];

    arrmsg1 =[json1 valueForKeyPath:@"Branches.id"];
    NSString *str = [arrmsg1 componentsJoinedByString:@","];

    NSLog(@"%@",str);
// call the method like
    [self sendDataToServer :@"POST" params:str];

// create the method like

 -(void) sendDataToServer : (NSString *) method params:(NSString *)str{


NSString *post = [NSString stringWithFormat:@"branch_id=%@",str];

.... continue your work

}
Anbu.Karthik
  • 82,064
  • 23
  • 174
  • 143