图片未上传到 php 服务器 ios 10

Image not upload to php server ios 10

图片未上传到 php 服务器 ios 10 出现错误

您没有 select 上传文件。

这是代码

- (IBAction)changeProfilePic:(id)sender {

[[sharedClass sharedInstance]showprogressfor:@"Please wait"];


NSString *urlString = [ NSString stringWithFormat:@"http://domain.com/as/web_services/change_user_image?user_id=%@",self.useridString];

UIImage *image= profile_Image;

NSData *imageData = UIImageJPEGRepresentation(image, 0.5);
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:urlString]];
request.timeoutInterval = 10.0f;
request.HTTPMethod = @"POST";

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


NSMutableData *body = [NSMutableData data];


[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];

[body appendData:[[NSString stringWithFormat:@"Content-Disposition:form-data; name=\"projectId\"\r\n\r\n"]dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];

NSData *stringData = [@"Content-Disposition: form-data;\
                      name=\"project\";\
                      fileName=\"photo.jpeg\"\r\n"
                      dataUsingEncoding:NSUTF8StringEncoding];
[body appendData:stringData];
[body appendData:[@"Content-Type: image/jpeg\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:imageData];

[body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[request setHTTPBody:body];
NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

// NSString *returnString = [[NSString alloc] initWithData:returnData encoding:NSUTF8StringEncoding];

NSDictionary *statusDict = [[NSDictionary alloc]init];
statusDict = [NSJSONSerialization JSONObjectWithData:returnData options:0 error:nil];

NSString *message = [statusDict valueForKey:@"msg"];

[SVProgressHUD dismiss];

NSLog(@" mesaage is %@", message); 

}

从 url

中删除 space

复制以下代码来解决您的问题

NSString *urlString = [NSString stringWithFormat:@"http://domine.com/as/web_services/change_user_image?user_id=%@",self.useridString];

试试这个 -

NSString *urlString = [ NSString stringWithFormat:@"http://domine.com/as/web_services/change_user_image?user_id=%@",self.useridString];
        NSData *imageData = UIImageJPEGRepresentation(theImage, 0.5);
        NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:[NSURL URLWithString:urlString]];
        request.timeoutInterval = 10.0f;
        request.HTTPMethod = @"POST";

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


        NSMutableData *body = [NSMutableData data];



        [body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];

        [body appendData:[[NSString stringWithFormat:@"Content-Disposition:form-data; name=\"projectId\"\r\n\r\n"]dataUsingEncoding:NSUTF8StringEncoding]];
        [body appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];

        NSData *stringData = [@"Content-Disposition: form-data;\
                              name=\"project\";\
                              fileName=\"photo.jpeg\"\r\n"
                              dataUsingEncoding:NSUTF8StringEncoding];
        [body appendData:stringData];
        [body appendData:[@"Content-Type: image/jpeg\r\n\r\n" dataUsingEncoding:NSUTF8StringEncoding]];
        [body appendData:imageData];

        [body appendData:[[NSString stringWithFormat:@"\r\n--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
        [request setHTTPBody:body];
        NSData *returnData = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];
        NSString *returnString = [[NSString alloc] initWithData:returnData encoding