PHP批量上传文件或图片的代码

标题PHP批量上传文件或图片的代码

  • 批量上传文件或图片,可以动态增加文件框

  • 如果想一次同时选择多个文件并有 预览效果要用浏览器插件

  • 上面PHP代码保存为一个文件或控制器multi_upload_file.php,HTMP代码保存为multi_upload_page.php或view中
    //exit( P O S T [ ′ c o n t ′ ] ) ; / / s e s s i o n s t a r t ( ) ; i f ( _POST['cont']);// session_start(); if ( POST[cont]);//sessionstart();if(_GET[‘up’] == ‘1’) {
    //防止重复提交
    if ($_SESSION[‘file’] == $_GET[‘irand’]) {
    c o n t = i n t v a l ( _cont = intval( cont=intval(_POST[‘cont’]); //将file框总数接收并转换成整型
    $_size = 20000000; //设置限制文件大小 20m
    d i r = ′ d a t a / ′ ; / / 文 件 保 存 目 录 f u n c t i o n s i z e ( _dir = 'data/'; //文件保存目录 function size( dir=data/;//functionsize(_size) {
    //判断文件大小是否大于1024bit 如果大于,则将大小取值为KB,以此类推
    if (KaTeX parse error: Expected '}', got 'EOF' at end of input: … return round(_size / 1024 / 1024, 2) . ’ MB’;
    } else if ($_size > 1024) {
    $_size = s i z e / 1024 ; r e t u r n c e i l ( _size / 1024; return ceil( size/1024;returnceil(_size) . ‘KB’;
    } else {
    return $_size . ’ bit’;
    }
    }
    //echo ‘1’;
    //设置上传图片的类型,设置图片上传大小
    u p f i l e s = a r r a y ( ′ i m a g e / j p e g ′ , ′ i m a g e / p j p e g ′ , ′ i m a g e / p n g ′ , ′ i m a g e / x − p n g ′ , ′ i m a g e / g i f ′ , ′ i m a g e / j p g ′ ) ; / / 利 用 f o r 循 环 上 传 文 件 f o r ( _upfiles = array( 'image/jpeg', 'image/pjpeg', 'image/png', 'image/x-png', 'image/gif', 'image/jpg' ); //利用for循环上传文件 for ( upfiles=array(image/jpeg,image/pjpeg,image/png,image/xpng,image/gif,image/jpg);//forfor(_i = 0; $_i < $_cont; KaTeX parse error: Expected '}', got 'EOF' at end of input: … if (is_array(_upfiles)) {
    if (!in_array( F I L E S [ ′ u s e r f i l e ′ ] [ ′ t y p e ′ ] [ _FILES['userfile']['type'][ FILES[userfile][type][_i], $_upfiles)) {
    //exit(‘请上传格式为:jpg,png,gif的文件
    返回’);

             }
         }
         //判断文件大小
         if ($_FILES['userfile']['size'][$_i] > $_size) {
             exit('上传文件不能超过:' . size($_size));
         }
         //检测文件是否已经上传
         if ($_FILES['userfile']['error'][$_i] > 0) {
             switch ($_FILES['userfile']['error'][1]) {
                 case 1:
                     echo '上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值';
                     break;
    
                 case 2:
                     echo '上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值';
                     break;
    
                 case 3:
                     echo '文件只有部分被上传';
                     break;
    
                 case 4:
                     echo '没有文件被上传';
                     break;
    
                 case 6:
                     echo '找不到临时文件夹';
                     break;
    
                 case 7:
                     echo '文件写入失败';
                     break;
             }
             echo '3';
         }
         //获取文件扩展名
         if (!is_dir($_dir)) {
             mkdir($_dir, 0777);
         }
         //生成随笔数
         $_rand = mt_rand(0, 100000);
         //获取文件扩展名
         $_n = explode('.', $_FILES['userfile']['name'][$_i]); //将文件名分割
         $_file_len = count($_n); //返回数组长度
         //确保获取的扩展名是最后一个.后面的
         $_name = $_dir . time() . '_' . $_rand . '.' . $_n[$_file_len - 1];
         //移动文件到指定的目录
         if (is_uploaded_file($_FILES['userfile']['tmp_name'][$_i])) {
             if (!@move_uploaded_file($_FILES['userfile']['tmp_name'][$_i], $_name)) {
                 exit('文件移动失败');
             } else {
                 echo '文件上传成功<br />';
                 echo '文件路径:' . $_name . '<br />';
                 echo '文件大小:' . size(filesize($_name));
                 echo '<br /><a href="pupload.php">返回继续上传</a>';
             }
         } else {
             exit('上传的临时文件不存在,无法将文件移动到指定文件夹');
         }
     }
     //销毁session变量,有几种方法
     //第一种,销毁所有session变量:session_destroy();
     //第二种:销毁单个如:$_SESSION['file']=''
     session_destroy();
     exit;
    

    } else {
    exit(‘您已经提交过了,不能重复提交
    返回’);
    }
    }
    ?>

页面代码:

<?php session_start(); ?> PHP文件批量上传

$("#add").click(function(){ //每点击一次增加一个文件输入框
KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲fileBox").appen…(‘input[type=file]’).length+"’/>");
});

});
//val是针对文本框的
//html是针对html标签的

PHP文件批量上传

<?php $_irand=mt_rand(0,1000000); $_SESSION['file']=$_irand; //设置一个随机变量防止重复递交 //name="userfile[]"了,下面的文件输入框,这个是以数组存储多文件,非常关键 ?>

在线演示:http://www.ncmem.com/products/image-uploader/demo/index.html 开发文档-ASP.NET(C#):http://www.cnblogs.com/xproer/archive/2011/01/09/1931278.html 开发文档-PHP:http://www.cnblogs.com/xproer/archive/2011/05/13/2045854.html 开发文档-JSP:http://www.cnblogs.com/xproer/archive/2011/05/20/2051887.html 产品介绍:http://www.cnblogs.com/xproer/archive/2010/08/09/1796077.html 升级日志:http://www.cnblogs.com/xproer/archive/2010/10/06/1844816.html 资源下载:crx安装包,xpi安装包,exe安装包,开发文档,ASP示例,ASP.NET示例,JSP示例,PHP示例, VC运行库:http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf 新颖网络图片上传插件是一款简化图片上传操作的插件。它提供了一些灵活的配置,能够帮助用户快速搭建起一个强大的图片分享平台。通过这些配置,用户还可以非常方便的同时上传多张图片,或将图片以指定的格式上传,免去手动转换图片格式的烦恼。 在最新版的图片上传控件中采用了全新的网络数据传输模块,新的模块全面优化了网络层的数据处理代码,同时在接收服务器返回的数据代码中采用精确识别的方式使数据处理效率更高。这些改进使图片上传控件具有了闪电般的上传速度。现在新颖网络图片上传控件在上传图片时平均每张图片帮助用户节省了50%的时间。 相信新颖网络图片上传控件能够为您的应用带来更好的用户体验。 产品特点如下: 1. 基于标准HTTP协议。 2. 支持BMP,JPG,GIF,PNG图片格式。 3. 支持自动生成缩略图。 4. 支持文件批量上传。 5. 支持文件拖拽操作。 6. 支持自定义上传信息。 7. 快速编辑。旋转操作。 8. 显示上传进度。 9. 支持文件格式批量转换。 10. 支持打开默认文件夹功能。 11. 免费提供JavaScript SDK包,方便您将插件快速集成到已有网站中。 支持语言:PHP,JSP,ASP,ASP.NET(C#),ASP.NET(VB),C++,VC,VC.NET,VB,VB.NET,C#,C#.NET,Delphi,C++Builder 支持平台:Visual Studio 6.0/2002/2003/2005/2008/2010,C++ Builder 6.0/2009/2010,Delphi 7/2009,Visual Basic 6.0/2008 支持脚本:JavaScript,VBScript 支持系统:Windows NT,Windows 2003,Windows XP,Windows Vista,Windows 7,Linux 支持浏览器:IE6,IE7,IE8,IE8(x64),IE9(x64),Firefox,Chrome,360安全浏览器,360极速浏览器,Maxthon1.x,Maxthon2.x,Maxthon3.x,QQ浏览器 支持图片格式:BMP,GIF,JPG,PNG,TIF
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值