2010-07-30 115 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

相關問題