PHP 多input file文件上传

  • 前台html
  • jquery代码
  • 后台PHP处理

前台html

<form id="form" method="post" enctype="multipart/form-data">
<input class="imagesUpload" type="file" name="imagesUpload[]" style="width: 152px;"/>
<input class="imagesUpload" type="file" name="imagesUpload[]" style="width: 152px;"/>
<input class="imagesUpload" type="file" name="imagesUpload[]" style="width: 152px;"/>
<input class="imagesUpload" type="file" name="imagesUpload[]" style="width: 152px;"/>
<a class="easyui-linkbutton" icon="icon-add" id="uploadImage_input">图片上传</a>
</form>

** 注意name的写法,都要使用name[]方式,并且用同一个name
** 注意带有file的表单,form一定要加:enctype=”multipart/form-data”

jquery 提交form表单

$("#form").form(‘submit‘,{
  url:url,
  success:function(data){
    //处理返回数据
  }
});

PHP 后台处理

//接收处理文件
$fileArray = $_FILES[‘imagesUpload‘];//根据请求的name获取文件
$upload_dir = public_path() . "/upload/carPic/";
$userID = Session::get(‘userID‘);
$nowTime = date("YmdHis", time());
$i = 0;
$successName = array();
foreach ($fileArray[‘error‘] as $key => $error){  //遍历处理文件
  if ( $error == UPLOAD_ERR_OK ) {
    $temp_name = $fileArray[‘tmp_name‘][$key];
    $file_name = $userID.‘-‘.$nowTime.$i.$fileArray[‘name‘][$key];
    move_uploaded_file($temp_name, $upload_dir.$file_name);
    array_push($successName, $file_name);//把上传成功的文件名称加入数组
  }else{
    return ‘{"flag":0,"flagmsg":"上传[文件‘.$key.‘]失败!<br/>!"}‘;
  }
  $i++;
}
$flag = array(‘flag‘=>1,‘flagmsg‘=>‘文件上传成功!‘);
$names = array(‘names‘=>$successName);
return json_encode(
  array_merge($flag,$names)
);//返回上传结果,并返回上传成功后的所有文件的名称

PHP代码都很简单,就不一一解释了。欢迎指导!
尊重原创,转载请注明出处:http://blog.csdn.net/a437629292/article/details/44337295

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。