创建自定义上传进度条

2023-11-23

我见过所有的上传进度条插件、小部件等——它们都很糟糕。它们要么体积太大,有太多无用的代码,要么不起作用。

我想知道在哪里可以阅读如何显示简单的上传进度指示器。大多数浏览器下面都有一个状态进度条,但在与客户打交道时仅使用它不太专业。

浏览器是如何做到的呢?我想知道浏览器如何工作以指示上传状态的内部结构,以便也许我可以使用 PHP 和 jquery 制作一些东西。

Thanks.


既然你想使用 PHP,我会从上传进度扩展(默认情况下,在上传完成之前,PHP 不会向您提供任何数据;此扩展提供了此类服务器端功能)。请注意,它需要 PHP 5.2+并且可以对配置选项很挑剔。另见其评论和演示 and 故障排除提示)。 PHP 文档中提供了简短概述comments.

使用该扩展程序,您可以获得一些上传统计信息;然后你可以通过 AJAX 轮询服务器并更新某种进度条。

更具体一点:

  • 获取表单的唯一标识符,并将其包含在隐藏字段中
  • 上传应在 IFRAME 中运行 - 某些浏览器不允许 DOM 更新到运行上传的同一页面
  • 通过 AJAX 轮询服务器(使用标识符来指定您感兴趣的上传)并解析结果(IIRC,您将得到类似“bytes_uploaded => 123,content-length=> 1000”的内容)
  • 更新你的进度条(你显示它的方式取决于你,我使用“x%完成”加上图形栏)
  • 表单上传后重定向整个页面 OK

(哦,顺便说一句,检查 PHP 的 upload_max_filesize 和 post_max_size 设置,因为两者都限制最大上传大小)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

创建自定义上传进度条 的相关文章

  • Jquery 组合 SlideUp/Down 并单击

    我创建了两个脚本 其中一个具有向上滑动和向下滑动命令 这些命令在页面加载时作用于计时器 第二个是单击事件 其中单击链接时执行向上 向下滑动命令 这两个脚本都是单独工作的 但我无法让它们一起工作 这是定时向上 向下滑动脚本 document
  • 删除数据表列中的额外填充

    你好 我创建了 JQuery DataTables 如下所示 所以我的问题是如何删除 图片 列中过多的填充 这就是我初始化表的方式 violators tbl DataTable aoColumnDefs bSortable false a
  • 物化模式覆盖整个页面(模式弹出窗口未带到前台)

    由于保密原因 我无法上传 Web UI 的屏幕截图 物化模态应该表现得像here http materializecss com modals html 但不幸的是 我的网站发生的情况是 包括模式在内的整个页面都是 深色背景 的一部分 模式
  • “使用未定义常量”注意,但该常量应该被定义

    共有三个文件 common php controller php 和 user php 文件 common php 如下所示 文件controller php看起来像 文件 user php 如下所示 执行脚本时 会给出通知 注意 使用未定
  • jqgrid删除:没有获取值

    我使用 JSP 和 Servlet IDE Eclipse 数据库 Oracle10 开发 Web 应用程序 我在用JQGRID以表格格式显示数据 我还想要添加 编辑 删除的功能JQGRID 到目前为止我已经完成了编辑功能 现在我想要Del
  • 使用模数按字母顺序对列表进行排序

    我在获取元素列表并按字母顺序对它们进行排序方面没有任何问题 但我很难理解如何使用模数来做到这一点 更新 这是按我的方式工作的代码 但是 我更喜欢下面提供的答案的可重用性 因此接受了该答案
  • 使用 jQuery/JS 打开时使
    标签的内容具有动画效果

    我只想要 HTML5 的内容details标记为 滑行 动画打开 而不是仅仅弹出打开 立即出现 这可以用 jQuery Javascript 实现吗 Fiddle http jsfiddle net 9h4Hq HTML
  • PHP 脚本可以在终端中运行,但不能在浏览器中运行

    我正在尝试执行exec命令 但我遇到了问题 当我运行以下代码时 当我通过浏览器运行它时它不起作用 但如果我把输出 str将其复制并粘贴到终端中 它工作得很好 造成这种情况的原因是什么 我该如何解决 目前我正在运行localhost php
  • 随机组合 MySQL 数据库中的两个单词

    我有一个包含名词和形容词的数据库 例如 id type word 1 noun apple 2 noun ball 3 adj clammy 4 noun keyboard 5 adj bloody ect 我想创建一个查询 它将抓取 10
  • 覆盖控制器 Symfony 3.4/4.0

    我目前正在尝试覆盖 FOSUserBundle 中的控制器 在新的文档中 https symfony com doc 3 4 bundles override html https symfony com doc 3 4 bundles o
  • jquery从变量中删除html元素

    我将 html 保存在变量中 var itinerary events today html 我有很多 html 和一个按钮我想删除 它的 ID 为 myButton 如何从变量中保存的 html 中删除它 我建议这种方法 var itin
  • SQL 最近日期

    我需要在 php 中获取诸如 2010 04 27 之类的日期作为字符串 并在表中找到最近的 5 个日期 表中的日期保存为日期类型 您可以使用DATEDIFF http dev mysql com doc refman 5 1 en dat
  • PHP HEREDoc (EOF) 语法在 Sublime Text 3 上突出显示与正斜杠的差异

    我不熟悉 Sublime Text 3 如何使用语法突出显示 例如 如果它纯粹依赖于主题 或者它内置于主题运行的标准中 但就我而言 使用 PHP 的 HERE 文档和转发存在一些语法突出显示差异斜线 一旦出现正斜杠 ST3 就会认为以下所有
  • 如何获取给定 DOM 元素的所有定义的 CSS 选择器?

    如何使用 jQuery 获取给定 DOM 元素的所有定义的 CSS 选择器 定义后 我的意思是在应用于任何样式表的所有 CSS 选择器document 在某种程度上 这类似于 FireBug 实现的功能 其中显示所选 DOM 元素的所有应用
  • 如何更改此 jquery 插件的时区/时间戳?

    我正在使用这个名为 timeago 的插件 在这里找到 timeago yarp com 它工作得很好 只是它在似乎不同的时区运行 我住在美国东部 费城时区 当我将准确的 EST 时间放入 timeago 插件时 比如 2011 05 28
  • 使用正则表达式提取两个短语之间的所有单词[重复]

    这个问题在这里已经有答案了 我正在尝试使用以下正则表达式提取两个短语之间的所有单词 b item W w W 0 2 1 one W w W 0 3 business b b item W w W 0 2 3 three W w W 0 3
  • Magento - 自定义支付模块

    这是一个非常普遍的问题 但这里是 我正在尝试在 Magento 中创建一个自定义支付模块 我创建了一个 常规 模块 可以连接到 Magento 事件 观察者模型 但是我如何告诉 Magento 将模块视为支付模块 以便它显示在管理后端和结账
  • post php mysql 的拆分关键字

    我有一个表存储帖子 ID 它的标签如下 Post id Tags 1 keyword1 keyword2 keyword3 我想循环遍历该表中的每一行并执行以下操作 将关键字1 关键字2 关键字3放入新表中 word id word val
  • 对具有混合类型值的数组进行数字排序

    我有一个像这样的混合数组 fruits array lemon Lemon 20 banana apple 121 40 50 然后申请sort 其功能如下 sort fruits SORT NUMERIC foreach fruits a
  • 无法显示 Laravel 欢迎页面

    我的服务器位于 DigitalOcean 云上 我正在使用 Ubuntu 和 Apache Web 服务器 我的家用计算机运行的是 Windows 7 我使用 putty 作为终端 遵循所有指示https laracasts com ser

随机推荐

  • Win 7 DllImport C# 奇怪的错误,对内存位置的访问无效?

    我正在使用 DllImport 从 C 应用程序访问 C dll 中的某些函数 该代码在我的开发笔记本电脑 Windows 7 64 位 上运行良好 dll 本身是 32 位 因此我以 32 位运行托管 dll 的进程 并且运行良好 但是
  • 将 QSlider 移动到鼠标点击位置

    我有一个 QSlider 当用户按下鼠标左键时 我想将其移动到鼠标光标的位置 我一直在四处寻找 但找不到任何最近可以解决我的问题的东西 这是我的滑块 我希望能够单击使滑块跳转到鼠标单击的位置 我可以拖动滑块 但我希望能够单击 我测试了单击
  • 日语 ASCII 代码

    在哪里可以获得与日语汉字 平假名和片假名字符对应的 ASCII 代码列表 我正在做一个java函数和Javascript来确定它是否是日语字符 它的ASCII码范围是多少 ASCII代表美国信息交换标准代码 仅包含 128 个字符 并非所有
  • 在 Eclipse 中重命名访问器/修改器方法?

    当他们获取 设置的变量被重构 gt 重命名 Eclipse 3 4 时 有什么方法可以自动重命名访问器 修改器 1 当您对变量选择 重构 gt 重命名 时 Eclipse 会提示您在 内联 框中输入新名称 在它的正下方 有一条帮助消息 旁边
  • 使用 setCompoundDrawables 进行 EditText 时计算图像大小

    当我添加如下图标时 etComment EditText findViewById R id et comment Drawable img getResources getDrawable R drawable warning etCom
  • 如何在Play Framework中定义任意任务? (如红宝石耙子)

    如何在Play Framework中定义任意任务 我的意思是任务从命令行运行 类似于 ruby rake 我知道 ant 工具 但正在寻找更好的替代方案 对于 Play 2 您可以按照此处的文档使用 SBT 创建新任务 http www s
  • 我可以在不使用 HTTPS 连接的情况下使用 SSL 证书吗?

    我有点困惑 如果 SSL 证书有助于识别您已连接到受信任的服务器 那么为什么需要使用加密 HTTPS 连接呢 我可以使用 SSL 证书进行 HTTP 连接吗 这里有一个误解 证书不是 SSL 使用证书的是SSL 但证书是在SSL之前诞生的
  • 沿弧线对 UIView 进行动画处理

    我希望沿着图中所示的弧线对视图进行动画处理 从位置 1 到位置 2 实际发生的情况是 视图动画描述的是一个完整的圆而不是圆弧 我的问题是 我应该使用CGPath添加弧 or CGPath添加圆弧到点 我需要使用吗CGPath移动到点是否描述
  • RESTful删除策略

    假设我有一个资源 在调用删除时可以有两种不同的行为 资源被删除 资源被移至回收站 如何以符合 REST 的方式对其进行建模 我想到了以下解决方案 DELETE myresource 将资源移至回收站 默认行为 DELETE myresour
  • 检查 PowerShell 中每行的第一个字符是否有特定值

    我正在读取包含特定格式数字的文本文件 我想弄清楚该行的第一个字符是 6 还是 4 并将整行存储在数组中以供以后使用 因此 如果该行以 6 开头 则将整行添加到 SixArray 中 如果该行以 4 开头 则将整行添加到 fourArray
  • 核心运动错误102是什么意思?

    我使用 Core Motion 的传感器融合来获取北向运动更新 motionManager startDeviceMotionUpdatesUsingReferenceFrame CMAttitudeReferenceFrameXTrueN
  • 如何将 openssl 添加到 swift 项目

    我正在学习如何向我的 iOS OSX 项目添加应用内购买收据验证 有一个很好的概述hereWWDC14 有关于这个主题的精彩视频 示例代码很多 但每个人都跳过一步 如何导入 openSSL 标头 swift 编译器抱怨没有这样的模块 imp
  • 在一个 SQL 查询中合并两个表并使日期值唯一

    我有以下两个表 您也可以在 SQL fiddle 中找到它们here CREATE TABLE Inbound Inbound Date DATE Product TEXT InboundType TEXT Quantity VARCHAR
  • 对于每个 int x: x+1 > x .... 这总是正确的吗?

    我刚刚开始在学校学习 C 我正在努力掌握基本概念 我们的作业有一个问题 对于每一个int x x 1 gt x 判断正确与否 正确则给出推理 错误则给出反例 我很困惑 因为我们被告知 int 类型是 32 位 这基本上意味着整数是二进制格式
  • iOS 8.3 Xcode 6.3.1 中未调用核心位置委托方法

    我试图使用 Xcode 6 3 1 中的核心位置框架获取用户的当前位置 我做了以下事情 Added 核心位置框架 under Target gt General gt 链接的框架和库 My 视图控制器 h文件如下图所示 import
  • 使用ajax通过POST向php传递多个参数

    我正在尝试使用 AJAX 通过 POST 方法将多个参数传递到我的 PHP 文件 以便我可以对 MySQL 数据库进行查询 HTML 文件 div class dropdown dropdown dark div
  • 使用 Devise after_sign_in_path_for 重定向循环

    我有一个菜鸟问题 我想要设计重定向到用户访问的最后一个页面 所以我做了以下 def after sign in path for resource request referer end 效果很好 除非用户实际上通过原始表单登录 这会导致重
  • 在 C++ 中,通过引用扩展范围是否安全?

    在 C 中 通过引用扩展范围是否安全 在代码中 我的意思是 MyCLass function badIdea MyClass obj1 return obj1 通过引用扩展范围是不安全的 C 中的对象没有引用计数 当 obj1 超出范围时
  • XFL - ./bin/*.dat 文件是什么?

    未压缩的 Adob e Flash XFL 格式仍保留大量压缩内容 有人知道这些二进制 dat 文件的规范吗 dat 文件存储各种类型的媒体内容 到目前为止我能说的是 图像存储为 JPEG 没有附加信息 这意味着只需重命名 dat 就足以获
  • 创建自定义上传进度条

    我见过所有的上传进度条插件 小部件等 它们都很糟糕 它们要么体积太大 有太多无用的代码 要么不起作用 我想知道在哪里可以阅读如何显示简单的上传进度指示器 大多数浏览器下面都有一个状态进度条 但在与客户打交道时仅使用它不太专业 浏览器是如何做