您的位置:首页 > 产品设计 > UI/UE

ios ASIFormDataRequest上传图片到php服务器

2013-09-28 17:23 323 查看
需要ASIHTTPRequest第三方库的童鞋请到我的资源下载

使用ASIHTTPRequest第三方库需要导入系统包如下:

libz.1.2.5.dylib ,
MobileCoreServices.framework ,

SystemConfiguration.framework ,

CFNetwork.framework  ,

CoreGraphics.framework  

需要导入ASIHTTPRequest包里的ASIFormDataRequest.h

#import "ASIFormDataRequest.h"

//上传图片
-(void)uploadImages:(UIButton *)sender
{

    NSData *data =
UIImagePNGRepresentation(self.img.image);

    NSURL *url = [[NSURL
alloc]initWithString:@"http://127.0.0.1/uploadFile/upload.php"];

    //以表格形式的请求对象

    ASIFormDataRequest *request = [[ASIFormDataRequest
alloc]initWithURL:url];
    request.delegate =self;
    request.requestMethod =
@"POST";//设置请求方式

    //添加请求内容

    [request addData:data
withFileName:[NSString
stringWithFormat:@"%d.png",arc4random()]
andContentType:@"image/png"
forKey:@"file"];

    //开始异步请求

    [request startAsynchronous];

     

    //如果成功则自动执行
    [request
setDidFinishSelector:@selector(requestedSuccessfully)];

    //如果失败则自动执行
    [request
setDidFailSelector:@selector(requestedFail)];

    
}
-(void)requestedSuccessfully
{
   
UIAlertView *alert = [[UIAlertView
alloc]initWithTitle:@"提示"
message:@"图片上传成功!" delegate:nil
cancelButtonTitle:@"确定" otherButtonTitles:
nil];
    [alert
show];

    
}
-(void)requestedFail
{
   
UIAlertView *alert = [[UIAlertView
alloc]initWithTitle:@"提示"
message:@"图片上传失败!" delegate:nil
cancelButtonTitle:@"确定" otherButtonTitles:
nil];
    [alert
show];
}

使用的php文件 upload.php
<?php

header("Content-type:text/html;charset=utf-8");

print_r($_FILES['file']);

$filename = $_FILES['file']['name'];

if(!$_FILES['file']['error']){

   if(move_uploaded_file($_FILES['file']['tmp_name'],"./upload/".$filename))

   {
  
    echo "文件上传成功";
  
  }else{
  echo "文件上传失败le";
  }

}else{

   echo "文件上传错误";
}

 ?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息