views:

1781

answers:

5

Hi, I have written an cocoa application to take a picture on the iPhone. I need to transfer the images taken to somewhere besides the iPhone namely another server. Does anyone know how I can accomplish this?

Thanks, Joe

A: 

You could always convert the image data to a base 64 string and POST it to a php (or other) script on the target server.

Joel Levin
+4  A: 

By far the easiest way is to use an HTTP POST. Take a look at the "URL Loading System" in your documentation and then examine the related classes, particularly NSURLRequest.

Brent Royal-Gordon
+4  A: 

First get a server and figure out what kind of phone <---> server API you want to use. There are any number of ways it can work. A simple and common scheme is a REST API with photos being uploaded via HTTP POST.

The basic scheme would be something like:

  1. Take picture
  2. Convert to JPG (there's a function for this)
  3. Construct HTTP POST using the NSURL* classes
  4. Set JPG data as POST body (or one part of a mutipart form post)

Converting to base64 should not be necessary.

If you've never put together any kind of server API, there are any number of examples available. Most photo-sharing sites have public APIs which may be useful references.

Tom Harrington
+1  A: 

As other people say, use HTTP POST. ASIHTTPRequest makes wrapping your POST up simple. It also moves your upload to a background thread and gives your delegate progress updates.

Roger Nolan
A: 

When i upload an image to PHP server side via my app then server side people didnt get any post data except request header.....

Can anyone help me????????

usha