2010-07-30 70 views
3

我想从图书馆或相机拍摄图像并将其上传到远程服务器,然后我可以在其中为每个上传的图像取回一个URL。将图像上传到远程服务器,iPhone

我希望从头开始。我正在寻找从何处开始的一些帮助。

我需要这样做最简单的方式,PHP和MySQL。 我应该从哪里开始?

另外,我宁愿不使用任何第三方。

只是简单的,

我如何DB连接, 插入 读 完成!

让我知道。

回答

3

哇,我ROCK!

和这个家伙。 http://iphone.zcentric.com/2008/08/29/post-a-uiimage-to-the-web/

继承人什么我实现

UIImage *myImage = [UIImage imageNamed:@"foo.png"]; 
NSData *imageData = UIImagePNGRepresentation(myImage); 
// setting up the URL to post to 
NSString *urlString = @"myurl/insert.php"; 

// setting up the request object now 
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; 
[request setURL:[NSURL URLWithString:urlString]]; 
[request setHTTPMethod:@"POST"]; 

NSString *boundary = [NSString stringWithString:@"---------------------------14737809831466499882746641449"]; 
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@",boundary]; 
[request addValue:contentType forHTTPHeaderField: @"Content-Type"]; 

/* 
now lets create the body of the post 
*/ 
NSMutableData *body = [NSMutableData data]; 
[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]]; 
[body appendData:[[NSString stringWithString:@"Content-Disposition: form-data; name=\"userfile\"; filename=\"ipodfile.jpg\"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 
[body appendData:[[NSString stringWithString:@"Content-Type: application/octet-stream\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]]; 
[body appendData:[NSData dataWithData:imageData]]; 
[body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n",boundary] dataUsingEncoding:NSUTF8StringEncoding]]; 
// setting the body of the post to the reqeust 
[request setHTTPBody:body]; 

// now lets make the connection to the web 
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil]; 
NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding]; 

NSLog(returnString); 

至于它看起来像PHP。

<?php 
     $uploaddir = './uploads/'; 
    $file = basename($_FILES['userfile']['name']); 
    $uploadfile = $uploaddir . $file; 

    if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { 
     echo "myurl/uploads/{$file}"; 
     } 
?> 

老板!!! @lessfame

+0

请注意,这纯粹上传照片到上传文件夹。 我的下一个任务是使用自定义名称,并将URL和文件名存储在数据库中。 WOOOO! – Franky 2010-07-30 18:03:49

+0

这一行:[body appendData:[[NSString stringWithString:@“Content-Disposition:form-data; name = \”userfile \“; filename = \”ipodfile.jpg \“\ r \ n”] dataUsingEncoding:NSUTF8StringEncoding] ]。不行动,
调试:($ _FILES ['userfile'] ['name'])为空 – vualoaithu 2014-01-20 09:08:24

+0

那么,但如果你想用变量替换“ipodfile.jpg”,你会怎么做? – 2014-01-21 13:02:11

相关问题