duanha3539 2015-01-12 04:29
浏览 64

将多个图像从Xcode上传到php服务器

I want to upload multiple images to php server from my Xcode, when I am sending 1 image it is working well and for sending more than 1 image, the php is storing the only last image file. Please help me out of the issue. Below is my IOS code

   NSMutableURLRequest*request=[[NSMutableURLRequest alloc]init];

   [request setURL:url];

   [request setCachePolicy:NSURLRequestReloadIgnoringCacheData];

   [request setHTTPMethod:@"POST"];

   [request setHTTPShouldHandleCookies:NO];

   [request setTimeoutInterval:30];

   NSString *BoundaryConstant = @"----------V2ymHFg03ehbqgZCaKO6jy";
   NSString*contentType=[NSString stringWithFormat:@"multipart/form-data; boundary=%@", BoundaryConstant];

   [request addValue:contentType forHTTPHeaderField:@"Content-Type"];

   NSMutableData*d=[NSMutableData data];

   NSMutableDictionary*parameters=[[NSMutableDictionary alloc]init];

   NSString*iD=[[NSUserDefaults standardUserDefaults]objectForKey:@"id"];

   NSString*fiD=[[NSUserDefaults standardUserDefaults]objectForKey:@"familyid"];

   NSString*eMailD=[[NSUserDefaults standardUserDefaults]objectForKey:@"email"];



   [parameters setObject:iD forKey:@"user_id"];

   [parameters setObject:self.modal.topicId forKey:@"topic_id"];

   [parameters setObject:self.posttextView.text forKey:@"message"];

   [parameters setObject:ddd forKey:@"posted_timestamp"];

   [parameters setObject:fiD forKey:@"family_id"];

   [parameters setObject:eMailD forKey:@"email_id"];

   [parameters setObject:fmem forKey:@"member_id"];


   NSString* FileParamConstant = @"filetoupload";


   NSArray*filetoupload=[[NSArray alloc]initWithObjects:FileParamConstant, nil];

   filetoupload=nil;

   for (NSString *param in parameters) {
       [d appendData:[[NSString stringWithFormat:@"--%@
", BoundaryConstant] dataUsingEncoding:NSUTF8StringEncoding]];
       [d appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"

", param] dataUsingEncoding:NSUTF8StringEncoding]];
       [d appendData:[[NSString stringWithFormat:@"%@
", [parameters objectForKey:param]] dataUsingEncoding:NSUTF8StringEncoding]];
   }

   NSLog(@"the chosen images count is %lu",(unsigned long)self.chosenImagesDataobjects.count);


   if (self.chosenImagesDataobjects.count>0) {

       for (int s=0;s<self.chosenImagesDataobjects.count ; s++) {


           [d appendData:[[NSString stringWithFormat:@"--%@
", BoundaryConstant] dataUsingEncoding:NSUTF8StringEncoding]];
           [d appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"image%d.jpg\"
", FileParamConstant,s] dataUsingEncoding:NSUTF8StringEncoding]];
           [d appendData:[[NSString stringWithFormat:@"Content-Type: image/jpeg

"] dataUsingEncoding:NSUTF8StringEncoding]];
           [d appendData:[self.chosenImagesDataobjects objectAtIndex:s]];
           [d appendData:[[NSString stringWithFormat:@"
"] dataUsingEncoding:NSUTF8StringEncoding]];


           [d appendData:[[NSString stringWithFormat:@"--%@--
", BoundaryConstant] dataUsingEncoding:NSUTF8StringEncoding]];


       }

   }


   [request setHTTPBody:d];


   NSLog(@"the body of the total payload is %@",d);

   NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[d length]];

   [request setValue:postLength forHTTPHeaderField:@"Content-Length"];

   NSOperationQueue*eighthQueue=[[NSOperationQueue alloc]init];

    [NSURLConnection sendAsynchronousRequest:request queue:eighthQueue completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {

      if ([data length]>0) {

          NSLog(@"data greaterthan zero");

      }      
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥20 测距传感器数据手册i2c
    • ¥15 RPA正常跑,cmd输入cookies跑不出来
    • ¥15 求帮我调试一下freefem代码
    • ¥15 matlab代码解决,怎么运行
    • ¥15 R语言Rstudio突然无法启动
    • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
    • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
    • ¥15 用windows做服务的同志有吗
    • ¥60 求一个简单的网页(标签-安全|关键词-上传)
    • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法