php切割文件上传,php+ajax实现文件切割上传功能示例
本文实例讲述了php+ajax实现文件切割上传功能。分享给大家供大家参考,具体如下:
html5中的file对象继承blob二进制对象,blob提供了一个slice函数,可以用来切割文件数据。
var myform = document.getelementbyid("myform");
var upfile = document.getelementbyid("upfile");
myform.onsubmit = function() {
//获取文件对象
var file = upfile.files[0];
//获取文件大小
var filesize = file.size;
//一次截取的大小(字节)
var cutsize = 1024 * 1024 * 10;
//开始截取位置
var cutstart = 0;
//结束截取位置
var cutend = cutstart + cutsize;
//截取的临时文件
var tmpfile = new blob();
while(cutstart < filesize) {
tmpfile = file.slice(cutstart, cutend);
//我们创建一个formdata对象
var fd = new formdata();
//把文件添加到formdata对象中
fd.append("file", tmpfile);
var xhr = new xmlhttprequest();
//这里使用同步
xhr.open("post", "upfile.php", false);
//上传进度
console.log(math.round( (cutstart + tmpfile.size) / filesize * 100) + "%");
//发送formdata对象
xhr.send(fd);
//重新设置截取文件位置
cutstart = cutend;
cutend = cutstart + cutsize;
}
return false;
};
upfile.php代码如下:
$uploaddir = './upload/';
if(!file_exists($uploaddir)) {
@mkdir($uploaddir, 0777, true);
}
$uploadfile = $uploaddir . basename($_files['file']['name']);
if(!file_exists($uploadfile)) {
//如果文件不存在
move_uploaded_file($_files['file']['tmp_name'], $uploadfile);
} else {
//如果文件已存在,追加数据
file_put_contents($uploadfile, file_get_contents($_files['file']['tmp_name']), file_append);
}
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
php切割文件上传,php+ajax实现文件切割上传功能示例相关推荐
- php调用swf文件上传,swfupload-jquery-plugin AJAX+PHP 文件上传
var listitem=' >'+ file.name+' ('+Math.round(file.size/1024)+' KB)'+ ' > '+ ' '+ ' > '+ ' & ...
- ajax send上传出错,Ajax在xmlhttp.send上出错
我正在尝试使用AJAX来更新数据库列.我正确地创建了变量并使用Javascript函数xmlhttp.open和xmlhttp.send将数据发送到我的PHP文件,该文件将数据添加到数据库行. 我做了 ...
- angular文件上传php,ajax jquery angular 上传文件与分隔上传
简单总结下 #ajax上传文件 var xmlhttp = new XMLHttpRequest(); xmlhttp.open("POST", "2.php" ...
- ajax文件后台提交,有关文件上传 非ajax提交 得到后台数据问题
下文给大家介绍文件上传非ajax提交得到后台数据的操作方法,具体详情如下所示: .......... 根据id获得表单数据然后发送ajax请求,获得后台返回数据,处理数据,完美. 但是如果需要上传文件 ...
- maven工程 java 实现文件上传 SSM ajax异步请求上传
java ssm框架实现文件上传 实现:单文件上传.多文件上传(单选和多选),并且用 ajax 异步刷新,在当前界面显示上传的文件 首先springmvc的配置文件要配置上传文件解析器: 1 < ...
- ajax 文件上传,ajax
ajax 文件上传,ajax 啥也不说了,直接上代码! <input type="file" id="file" name="myfile&qu ...
- html5支持ajax和jQuery吗,使用HTML5文件上传与AJAX和jQuery(Using HTML5 file uploads with AJAX and jQuery)...
使用HTML5文件上传与AJAX和jQuery(Using HTML5 file uploads with AJAX and jQuery) 诚然,Stack Overflow上有类似的问题,但似乎并 ...
- ajax文件上传data,ajax文件上传-FormData()
HTML: JS: $("input[type='button']").on('click', upfile); /** * [upfile 文件上传] * @return {[O ...
- springmvc ajax excel文件上传,JSP+ajax+springMVC+MayBatis处理excel上传导入
jsp 导入 jquery //数据导入 function importData(){ var files = $('input[name="importData"]').prop ...
最新文章
- 使用GoAccess分析Nginx日志
- 中科大硬核“毕业证”:“一生一芯”计划下,5位本科生带自研芯片毕业
- css dl图片布局,经典图文列表以及CSS布局切换
- 震惊,竟然有人用Taro来。。。
- java nep_Java 9 揭秘(1. 入门介绍)
- 15年3月c语言试卷,2015年3月二级C语言新增无纸化真题试卷(三)
- 牛客题霸 [旋转字符串]C++题解/答案
- 【渝粤教育】广东开放大学 计算机思维 形成性考核 (29)
- 微信小程序知识点GET
- 产品经理必看:终于有人把数据指标讲明白了
- 我用Python帮学校写了一款图书管理系统!教导员居然请我吃饭
- 前端:JS/27/HTML DOM简介和新特性,HTML DOM访问HTML元素的方法,元素对象的属性(标准属性),noscroll事件,实例:书讯快递
- PHP header发送各种类型文件及设置文件下载名
- Mysql忘记密码,支持中文,tab补全
- 搭载Apple芯片的Mac如何使用macOS恢复?
- 简单免费内网穿透教程,外网快速访问内网群晖/nas/树莓派
- 央视《家有妙招》整理版,值得永远收藏!
- repost ACM算法学习三境界---王国维人间词话
- mysql sql 按天分组统计_Mysql按日、周、月进行分组统计
- Beta周王者荣耀交流协会第一次Scrum会议