欢迎您来到,李雷博客 | PHP博客        登录  |  注册

PHP多文件上传示例代码

更新:2022-05-29 18:07:16
人气:1070
来源:本站原创
A+

实现功能,html页面的文件上传表单可以选择多个文件,PHP后台可以循环获取到所有要上传文件的信息(名称、类型、大小),并循环上传及处理文件。

HTML表单文件:(注意表单中file名称要加[]变为数组,multiple="multiple"代表可以多选文件)

<form name="form1" id="form1" method="POST" action="?" enctype="multipart/form-data">
    <input type="file" name="file[]" multiple="multiple">
</form>

PHP接收表单上传域:

<?php
if ($_FILES["file"]["error"][0] !=4){ //多文件上传要用[0],只要第0个(即第1个)有文件即可继续执行
    function fileext($filename){ 
        return substr(strrchr($filename, '.'), 1); 
    }
    
    //计算数组中上传文件的数量
    $total_count = count($_FILES['file']['name']);
    
    for( $file_i=0 ; $file_i < $total_count ; $file_i++ ) {
        $uppath="upfile_xls/";
        $type=array("xls");//设置允许上传文件的类型
        $filename=time().".xls";  //原文件名:$_FILES["file"]["name"]  后缀名 strtolower(fileext($_FILES['file']['name']))
        $path_name=$uppath.$filename;
        
        if(!in_array(strtolower(fileext($_FILES['file']['name'][$file_i])),$type)){
            echo "<script language=javascript>alert('上传文件类型不正确!限xls格式');javascript:history.back(-1);</script>";
            exit;
        }
        
        if ($_FILES["file"]["size"][$file_i] > 10000*1024){
            echo "<script language=javascript>alert('上传文件大小超过限制!');javascript:history.back(-1);</script>";
            exit;
        }
        
        if ($_FILES["file"]["error"][$file_i] > 0){
            echo "上传参数错误: " . $_FILES["file"]["error"] . "<br />";
        }else{
            move_uploaded_file($_FILES["file"]["tmp_name"][$file_i],$path_name);//上传文件
        }
        
        //以下为处理上传文件的逻辑,如EXCLE导入数据等
        //..............
    }
}
?>


推荐的文章
# 发表我的评论
  /     /  
# 最近评论
暂时还没有评论,要不要说点什么?
  Ads by Google
  联系博主
Hello,本博客系统采用PHP和MySql开发,程序开发完全是因为个人爱好,是自己纯手写PHP源代码,未采用任何PHP框架!
QQ:858353007   微信号:lileihot123
网站地图
会员服务
关于我们
QQ:858353007
 
广告服务
加我微信
移动端访问
 
 
Copyright © 2014- 2025 www.mdaima.com All Rights Reserved.
李雷博客,专注PHP经验、PHP教程及PHP源代码开源下载分享的PHP博客!   ICP备案号:京ICP备10202169号-4