Php 将图像上载到web服务-初学者

Php 将图像上载到web服务-初学者,php,iphone,objective-c,cocoa-touch,asihttprequest,Php,Iphone,Objective C,Cocoa Touch,Asihttprequest,我必须上传通过摄像头拍摄的图像或通过uiimagepickerview上传的图像。我正在使用AsittpRequest ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; [request setFile:@"/Users/ben/Desktop/ben.jpg" forKey:@"photo"]; 1.)由于我是从iPhone摄像头拍摄照片或从uiimagepickerview上传照片,我需要知道我应

我必须上传通过摄像头拍摄的图像或通过
uiimagepickerview
上传的图像。我正在使用AsittpRequest

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];

[request setFile:@"/Users/ben/Desktop/ben.jpg" forKey:@"photo"];
1.)由于我是从iPhone摄像头拍摄照片或从
uiimagepickerview
上传照片,我需要知道我应该为
setFile
(替换文本为
@)/Users/ben/Desktop/ben.jpg“
)设置什么值


2.)我还需要测试这个应用程序,那么是否有人知道相应的PHP代码,我可以在其中显示拍摄的图像(在web浏览器上)。教程或示例代码

您应该将图像作为图像数据添加到请求正文中


要获得第一个问题的答案,请查看以下代码片段:

#import <MobileCoreServices/MobileCoreServices.h>

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
    BOOL isImage = ([[info objectForKey:UIImagePickerControllerMediaType] isEqualToString:kUTTypeImage]);
    if (isImage) {
        self.request = [ASIFormDataRequest requestWithURL:url];
        UIImage *originalImage = [info objectForKey:UIImagePickerControllerOriginalImage];
        NSData *imageData = UIImageJPEGRepresentation(originalImage, 0.7);
        [self.request setData:imageData
                 withFileName:@"photo.jpg"
               andContentType:@"image/jpeg"
                       forKey:@"photo"];
        [self.request start];
    }
}
若您的对象被解除分配,它将允许您停止请求或至少将其委托设置为nil,只需实现

- (void) dealloc {
    [self.request cancel];
    self.request.delegate = nil;
    [request release];
    [super dealloc];
}

谢谢你的回复。在
UIImageJPEG表示法(原始图像,0.7)
中,什么是
0.7
?我在代码中使用了ARC。你知道相应的PHP代码吗?我可以在那里测试它是否工作?没问题。您可以检查0.7是JPEG压缩质量。此参数的值范围为[0.0;1.0]。根据“值0.0表示最大压缩(或最低质量),而值1.0表示最小压缩(或最佳质量)。”您知道要使用PHP,您必须使用PHP模块等设置web服务器。我认为最好使用一些带有自己API的图像宿主进行检查。为什么要添加
#import
?哪种方法使用它?kUTTypeImage需要它。
- (void) dealloc {
    [self.request cancel];
    self.request.delegate = nil;
    [request release];
    [super dealloc];
}