tags:

views:

62

answers:

4
+1  Q: 

Send POST array

Hi, i wish to send some data as array from my iphone app to server

When i was posting single variables before i was sending the post as an NSString

NSString *post =[[NSString alloc] initWithFormat:@"userName=%@&accountID=%@&",
                                                  username,accId];

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

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

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; 
[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];

Now i wish to send an array of these usernames and accountIds, how do i send an NSArray in a POST and then in php on my server how can i retrieve it?

Thanks

A: 

Create an XML and send it as POST data...

lukya
A: 

You might consider creating a xml file from the data first and then send it to your server. Creating and parsing XML is easy, take a look at libxml2

Toastor
+1  A: 

use json, it's easier than messing with monstrous xml, json is quite easy on iphone with touchjson library and php supports json natively too

touchjson is at http://code.google.com/p/touchcode/wiki/TouchJSONHowTo

json is also smaller, so it saves some traffic when using over 3g

Mike
+1 json is what I'd use.
Dave DeLong
A: 

you could serialize the array and send it as a string :)

aniri