PHP如何实现多文件上传功能?
- 内容介绍
- 文章标签
- 相关推荐
本文共计380个文字,预计阅读时间需要2分钟。
前端HTML代码:
后端PHP处理代码(示例):php $name) { $fileTemp=$uploadedFiles['tmp_name'][$key]; $fileSize=$uploadedFiles['size'][$key]; $fileError=$uploadedFiles['error'][$key]; $fileType=$uploadedFiles['type'][$key];
$fileExt=strtolower(end(explode('.', $name)));
$allowedTypes=array('jpg', 'jpeg', 'png', 'gif');
if (in_array($fileExt, $allowedTypes) && $fileError===0 && $fileSize
- 前台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)
);//返回上传结果,并返回上传成功后的所有文件的名称
出处:
www.voidcn.com/article/p-trdahutl-kk.html
本文共计380个文字,预计阅读时间需要2分钟。
前端HTML代码:
后端PHP处理代码(示例):php $name) { $fileTemp=$uploadedFiles['tmp_name'][$key]; $fileSize=$uploadedFiles['size'][$key]; $fileError=$uploadedFiles['error'][$key]; $fileType=$uploadedFiles['type'][$key];
$fileExt=strtolower(end(explode('.', $name)));
$allowedTypes=array('jpg', 'jpeg', 'png', 'gif');
if (in_array($fileExt, $allowedTypes) && $fileError===0 && $fileSize
- 前台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)
);//返回上传结果,并返回上传成功后的所有文件的名称
出处:
www.voidcn.com/article/p-trdahutl-kk.html

