您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

PHP文件上传功能——多文件上传

2024/11/8 20:20:36发布22次查看
这一节内容主要介绍php上传文件的多文件上传功能。只要以数组形式来命名表单中的文件上传标记,即可实现多个文件同时上传。
下面我们来看一个例子:
---------------------------------------------------------------------
<form enctype="multipart/form-data" action="<?=$_server['php_self']?>" method="post"> <input type="hidden" name="max_file_size" value="104857600" /> <table> <tr> <td>上传文件:<input name="upload_file[]" type="file" size="50" /></td> </tr> <tr> <td>上传文件:<input name="upload_file[]" type="file" size="50" /></td> </tr> <tr> <td>上传文件:<input name="upload_file[]" type="file" size="50" /></td> </tr> <tr> <td>上传文件:<input name="upload_file[]" type="file" size="50" /></td> </tr> <tr> <td><input type="submit" name="submit" value="上传"/></td> </tr> </table> </form> <?php function upload($file_error, $file_tmp_name, $file_name){ $info = ""; if($file_name == "") return $info; switch($file_error){ case upload_err_ini_size: $info = $file_name. ": 文件大小超过了服务器的限制"; break; case upload_err_form_size: $info = $file_name. ": 文件大小超过了浏览器的限制"; break; case upload_err_partial: $info = $file_name. ": 只上传了部分文件"; break; case upload_err_no_file: $info = $file_name. ": 没有文件被上传"; break; case upload_err_no_tmp_dir: $info = $file_name. ": 找不到临时文件夹"; break; case upload_err_cant_write: $info = $file_name. ": 文件写入失败"; break; case upload_err_ok: $upload_dir = './'.iconv("utf-8","gb2312",$file_name); if(file_exists($upload_dir)){ $info = $file_name.": 同名文件已经存在"; }else{ if(move_uploaded_file($file_tmp_name,$upload_dir)){ $info = $file_name.": 文件上传成功"; }else{ $info = $file_name.": 文件上传失败"; } } break; } return $info; } if(isset($_post['submit'])){ $info = ''; $count = count($_files['upload_file']['name']); for($i=0; $i<$count; ++$i){ if($_files['upload_file']['name'][$i] == "") continue; $info = upload( $_files['upload_file']['error'][$i], $_files['upload_file']['tmp_name'][$i], $_files['upload_file']['name'][$i] ); } echo $info; } ?>
--------------------------------------------------------------------------------------
代码执行结果如下:
注意:
1、7ca1ebe4f2ef114da9cfe774f937c063中, name=upload_file[]一定要以数组形式命名,不然就会出现错误:    “uninitialized string offset: 0”,这句话的意思是你的数组key值越界了
2、$_files['upload_file']['name'][$i]中, upload_file是表单中上传文件标记符的名称,多文件上传时,数组$_files的第三维下标会自动从0开始依次编号。
相关推荐:
php文件上传功能实现代码分享
配置php.ini实现php文件上传功能
如何配置php.ini以实现php文件上传功能
以上就是php文件上传功能——多文件上传 的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product