Reputation: 746
I have an iPhone app with an array of objects that I want to send to a PHP script and have them be stored in a mySQL database. The objects in the array contain only floating points and strings, nothing special.
From what I understand the best way to send the array to the php script is to convert the array into an JSON, send it to the php script via http post, and do a json_decode on the other end. However I'm having a hard time figuring out how to convert the array into a json object.
Can someone give me a pointer of where to start?
Upvotes: 1
Views: 2458
Reputation: 10701
Start with the JSON library for objective-c:
http://code.google.com/p/json-framework
That will make the serialization much easier, as it has a method to convert an NSArray to JSON.
From there you can post using different mechanisms, but NSURLConnection is the easiest. You can do synch or asynch, depending on your needs.
You will need to set some headers on the request for json:
NSMutableURLRequest * r = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:30.0];
[r addValue:@"application/json" forHTTPHeaderField:@"Accept"];
[r setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
Upvotes: 3
Reputation: 30394
JSON is a simple text format. You can write the string out yourself by looping over your array if you don't want to use a library.
http://www.json.org/example.html
Upvotes: 0
Reputation: 12087
http://code.google.com/p/touchcode/wiki/TouchJSON
"TouchJSON is parser and generator for JSON implemented in Objective C.
It is based on my CocoaJSON code: http://toxicsoftware.com/cocoajson/
Here is how to use it: TouchJSONHowTo"
Upvotes: 4