本文实例讲述了PHP大文件切割上传并带进度条功能。分享给大家供大家参考,具体如下:

前面一篇介绍了PHP大文件切割上传功能,这里再来进一步讲解PHP大文件切割上传并带进度条功能。

项目结构图:

14-slice-upload-fix.html文件:

大文件切割上传带进度条

var xhr = new XMLHttpRequest();//xhr对象

var clock = null;

function selfile(){

clock = window.setInterval(sendfile,1000);

}

var sendfile = (function (){

const LENGTH = 1024 * 1024 * 10;//每次上传的大小

var start = 0;//每次上传的开始字节

var end = start + LENGTH;//每次上传的结尾字节

var sending = false;//表示是否正在上传

var fd = null;//创建表单数据对象

var blob = null;//二进制对象

var percent = 0;

return (function (){

//如果有块正在上传,则不进行上传

if(sending == true){

return;

}

var file = document.getElementsByName('video')[0].files[0];//文件对象

//如果sta>file.size,就结束了

if(start > file.size){

clearInterval(clock);

return;

}

blob = file.slice(start,end);//根据长度截取每次需要上传的数据

fd = new FormData();//每一次需要重新创建

fd.append('video',blob);//添加数据到fd对象中

up(fd);

//重新设置开始和结尾

start = end;

end = start + LENGTH;

sending = false;//上传完了

//显示进度条

percent = 100 * start/file.size;

if(percent>100){

percent = 100;

}

document.getElementById('bar').style.width = percent + '%';

document.getElementById('bar').innerHTML = parseInt(percent)+'%';

});

})();

function up(fd){

xhr.open('POST','13-slice-upload.php',false);

xhr.send(fd);

}

#progress{

width:500px;

height:30px;

border:1px solid green;

}

#bar{

width:0%;

height:100%;

background-color: green;

}

大文件切割上传带进度条

13-slice-upload.php文件:

/**

* 大文件切割上传,把每次上传的数据合并成一个文件

* @author webbc

*/

$filename = './upload/upload.wmv';//确定上传的文件名

//第一次上传时没有文件,就创建文件,此后上传只需要把数据追加到此文件中

if(!file_exists($filename)){

move_uploaded_file($_FILES['video']['tmp_name'],$filename);

}else{

file_put_contents($filename,file_get_contents($_FILES['video']['tmp_name']),FILE_APPEND);

}

?>

运行结果图:

希望本文所述对大家PHP程序设计有所帮助。

php带截切图片上传_PHP大文件切割上传并带进度条功能示例相关推荐

  1. html video 设置进度条不可拖动_PHP大文件切割上传并带上进度条功能,不妨一试...

    文章来自:脚本之家链接:https://www.jb51.net/article/164316.htm 作者:hhmp 商务合作:请加微信(QQ):2230304070 资源教程分享 码农网-技术教程 ...

  2. js实现大文件切割上传的方法

    1.介绍enctype enctype 属性规定发送到服务器之前应该如何对表单数据进行编码. enctype作用是告知服务器请求正文的MIME类型(请求消息头content-type的作用一样) 1. ...

  3. c# html 附件上传,c#大文件分片上传demo

    资源下载此资源下载价格为2D币,请先登录 资源文件列表 FileCut 1/bin/Debug/FileCut.exe , 16384 FileCut 1/bin/Debug/FileCut.pdb  ...

  4. vue大文件分片上传插件

    最近遇见一个需要上传百兆大文件的需求,调研了七牛和腾讯云的切片分段上传功能,因此在此整理前端大文件上传相关功能的实现. 在某些业务中,大文件上传是一个比较重要的交互场景,如上传入库比较大的Excel表 ...

  5. php上传完没进度条_php使用APC实现实时上传进度条功能

    这篇文章主要介绍了php使用APC实现实时上传进度条功能,php本身不具备可以带有实时上传进度条功能,但是php提供了一个apc,它可以与php配置实现上传进度条,感兴趣的小伙伴们可以参考一下 php ...

  6. 大文件分片上传,断点续传,秒传 实现

    前段时间做视频上传业务,通过网页上传视频到服务器. 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制:2,请求时间过长, ...

  7. 大文件分片上传前端框架_js实现大文件分片上传的方法

    文件夹上传:从前端到后端 文件上传是 Web 开发肯定会碰到的问题,而文件夹上传则更加难缠.网上关于文件夹上传的资料多集中在前端,缺少对于后端的关注,然后讲某个后端框架文件上传的文章又不会涉及文件夹. ...

  8. html上传文件_.NET基于WebUploader大文件分片上传、断网续传、秒传

    (给DotNet加星标,提升.Net技能) 转自:学习中的苦与乐 cnblogs.com/xiongze520/p/10412693.html 现在的项目开发基本上都用到了上传文件功能,或图片,或文档 ...

  9. iOS 利用AFNetworking实现大文件分片上传

    概述 一说到文件上传,想必大家都并不陌生,更何况是利用AFNetworking(PS:后期统称AF)来做,那更是小菜一碟.比如开发中常见的场景:头像上传,九宫格图片上传...等等,这些场景无一不使用到 ...

最新文章

  1. 【青少年编程】黄羽恒:漫天飞雪
  2. php 接口的定义与实现,PHP接口定义与用法示例
  3. ASP.NET MVC 框架路线图更新 【转】
  4. python PyQt5 adjustSize()(根据内容自适应大小)
  5. boost::mp11::mp_clear相关用法的测试程序
  6. Redis学习第八课:Redis高级实用特性(一)
  7. springboot创建项目
  8. java判断 图片_java判断是否为图片的步骤和方法
  9. 互联网公司大厂中厂小厂分别指哪些公司?
  10. WPF - ViewModle中关闭Window
  11. java——ArrayList中contains()方法中的疑问
  12. 工具-WPT(Windows Performances Tool Kit) References
  13. Unity3D AssetBundle相关
  14. 性能测试之LoadRunner11脚本录制方法
  15. 月薪12.8K,转行测试斩获3份过万offer,分享一些我的小秘招
  16. PL3369C原边12W电源芯片
  17. 单板电源设计(LDO、DC/DC)
  18. linux基础-自查
  19. 大脑简史(1)-历史上的大事件
  20. C语言字符类型输入方式选择

热门文章

  1. 【自动驾驶】20.自动驾驶中的各种时空坐标系
  2. 计算机视觉与模式识别(1)—— A4纸边缘提取
  3. 阿里P7/P8学习路线图——技术封神之路
  4. JVM垃圾回收算法 总结及汇总
  5. CVPR 2016 有什么值得关注的亮点?
  6. Latex合并及插入图片相关问题
  7. Hadoop MapReduce容错性分析
  8. 线性代数:第三章 矩阵的初等变换与线性方程组(2)线性方程组的解 初等方阵
  9. 高等数学:第十一章 无穷级数(3)正弦级数、余弦级数、周期为2L的周期函数的傅里叶级数
  10. 电子商务(电销)平台中用户模块(User)数据库设计明细