php上传文件并显示上传进度的方法


Posted in PHP onMarch 24, 2015

本文实例讲述了php上传文件并显示上传进度的方法。分享给大家供大家参考。具体如下:

记得上传文件的时候要大点,不然还没看出来就上传完了,并且上传的文件不要太大,上G的就算了,2G的我试了,PHP受不了,我测试的是300多M的,记得要调整小php.ini参数啊 “选文件=》提交=》获取信息”要一气呵成哦^ ^

<?php
$prefix = ini_get('session.upload_progress.prefix');
$name  = ini_get('session.upload_progress.name');
$key  = $prefix . $name;
session_start();
if (isset($_POST['get_info'])) {
  $logo = $prefix . $_POST['logo'];
  exit(json_encode($_SESSION[$logo]));
} elseif ($_POST) {
  echo '<script>var finashed = true;</script>';
}
?>
<div id="show_info_div"></div>
<form action="index.php" method="POST" enctype="multipart/form-data">
  <input type="hidden" name="<?php echo $name; ?>" value="test">
  <input type="file" name="file"><br>
  <input type="submit" value="提交">
  <input type="button" value="获取信息" onclick="getUploadInfo()">
</form>
<script src="jquery.js"></script>
<script>
var sto = null;
var progress = null;
function getUploadInfo()
{
  $.post("index.php", {"get_info": 1, "logo": "test"}, function(data)
  {
    data = eval("(" + data + ")");
    progress = parseInt(parseInt(data.bytes_processed) * 10000 / parseInt(data.content_length)) / 100 + "%";
    document.getElementById("show_info_div").innerHTML = progress;
    sto = setTimeout("getUploadInfo()", 1000);
  });
}
if (typeof(finashed) !== "undefined")
{
  document.getElementById("show_info_div").innerHTML = "100.00% (上传成功!)";
}
</script>

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

PHP 相关文章推荐
实现dedecms全站URL静态化改造的代码
Mar 29 PHP
php获取当前网址url并替换参数或网址的方法
Jun 06 PHP
php防攻击代码升级版
Dec 29 PHP
eAccelerator的安装与使用详解
Jun 13 PHP
解析PHP提交后跳转
Jun 23 PHP
PHP代码优化的53个细节
Mar 03 PHP
php发送get、post请求的6种方法简明总结
Jul 08 PHP
PHP获取短链接跳转后的真实地址和响应头信息的方法
Jul 25 PHP
一个经典实用的PHP图像处理类分享
Nov 18 PHP
深入浅析yii2-gii自定义模板的方法
Apr 26 PHP
php实现的中文分词类完整实例
Feb 06 PHP
php快速导入大量数据的实例方法
Sep 23 PHP
php通过修改header强制图片下载的方法
Mar 24 #PHP
PHP下载远程文件到本地存储的方法
Mar 24 #PHP
php实现encode64编码类实例
Mar 24 #PHP
推荐十款免费 WordPress 插件
Mar 24 #PHP
php实现用于验证所有类型的信用卡类
Mar 24 #PHP
php动态生成版权所有信息的方法
Mar 24 #PHP
php实现通用的信用卡验证类
Mar 24 #PHP
You might like
PHP高级对象构建 多个构造函数的使用
2012/02/05 PHP
PHP基础知识介绍
2013/09/17 PHP
PHP文件读写操作相关函数总结
2014/11/18 PHP
PHP使用preg_split()分割特殊字符(元字符等)的方法分析
2017/02/04 PHP
php使用fullcalendar日历插件详解
2019/03/06 PHP
学习jquery之一
2007/04/27 Javascript
js 获取坐标 通过JS得到当前焦点(鼠标)的坐标属性
2013/01/04 Javascript
javascript自适应宽度的瀑布流实现思路
2013/02/20 Javascript
javascript实现信息的显示和隐藏如注册页面
2013/12/03 Javascript
jQuery控制TR显示隐藏的几种方法
2014/06/18 Javascript
用C/C++来实现 Node.js 的模块(二)
2014/09/24 Javascript
javascript基于DOM实现权限选择实例分析
2015/05/14 Javascript
AngularJS 最常用的功能汇总
2016/02/17 Javascript
vue双向绑定简要分析
2017/03/23 Javascript
vue-cli的工程模板与构建工具详解
2018/09/27 Javascript
Vuex 模块化使用详解
2019/07/31 Javascript
js实现指定时间倒计时效果
2019/08/26 Javascript
在Angular中实现一个级联效果的下拉框的示例代码
2020/05/20 Javascript
如何使用vue slot创建一个模态框的实例代码
2020/05/24 Javascript
python实现的守护进程(Daemon)用法实例
2015/06/02 Python
Python 删除整个文本中的空格,并实现按行显示
2018/07/24 Python
Django model update的多种用法介绍
2020/03/28 Python
django inspectdb 操作已有数据库数据的使用步骤
2021/02/07 Python
css3中transition属性详解
2014/09/02 HTML / CSS
美国轻奢时尚购物网站:REVOLVE(支持中文)
2020/07/18 全球购物
Java面试中常遇到的问题,也是需要注意的几点
2013/08/30 面试题
请解释接口的显式实现有什么意义
2012/05/26 面试题
TCP/IP中的TCP和IP分别承担什么责任
2012/04/21 面试题
病媒生物防治方案
2014/05/13 职场文书
国际经济与贸易专业求职信
2014/07/10 职场文书
忠诚奉献演讲稿
2014/09/12 职场文书
网络研修心得体会
2016/01/08 职场文书
党章党规党纪学习心得体会
2016/01/14 职场文书
公安忠诚教育心得体会
2016/01/23 职场文书
导游词之长城八达岭
2019/09/24 职场文书
Vue组件更新数据v-model不生效的解决
2022/04/02 Vue.js