I roll my own for most URL/HTTP communication, but I hadn’t messed w/ multipart image posts in a while. I found the class I wrote a while back (based on this) but wanted to try ASIHTTPRequest. Their doco is well put together and it’s fairly easy to implement…
To send POST data in a manner compatible with web page forms, use the included ASIFormDataRequest subclass. Data is posted in ‘application/x-www-form-urlencoded’ format, or ‘multipart/form-data’ format when uploading binary data or files. Data in files is read as needed from disk, so POSTing large files is OK, as long as your web server is setup to handle them.