PHP-监测文件上传进度和状况

项目合作 项目合作 主题:1029 回复:2134

PHP-监测文件上传进度和状况

甜柠檬 发布于 2017-10-04 字数 332 浏览 1232 回复 2

请输入图片描述

看都某君的文件上传组建,发现内容何其丰富,查看网页结构,发现满足以下要求。
1.非flash
2.浏览器里面无法检测向后台post东西。
3.兼容IE6。

请问熟悉的用户,能否告诉这种上传组件的原理是什么,该如何实现呢?

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(2

泛泛之交 2017-10-22 2 楼

静态的图片,和后台实时交互读取上传的百分比,从而实时更新静态图片(进度条)的填充百分比,不知道 你是不是想问的是这些。。。

想挽留 2017-10-21 1 楼

php5.2以后的增加APC,全称为 Alternative PHP Cache;php通过它可以在文件传输过程中可获得的数据点,默认情况下APC是关闭的,你首先下载php_apc.dll,把 php_apc.dll 文件放到 PHP 的扩展文件夹中。默认情况下,此文件夹为 /php/ext,然后修改一下php.inc

extension=php_apc.dll
apc.rfc1867 = On

下面给部分检测文件上传进度:

/ 获取上传进度信息 /
if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest'){
if(isset($_GET['APC_UPLOAD_PROGRESS']) && $_GET['do'] == 'retrieving') {
$status = apcfetch('upload'.$_GET['APC_UPLOAD_PROGRESS']);
if($status['total']!=0 && !empty($status['total'])) {
$json = array(
'per'=> $status['current']/$status['total']*100,
'total'=> round($status['total']/1024),
'current'=> round($status['current']/1024),
);
echo json_encode($json);
exit;
}
else {
echo (0);
exit;
}
}
}

完整代码:
php/apc 监控文件上传进度