【问题标题】:get filename of file uploaded through ajax获取通过ajax上传的文件的文件名
【发布时间】:2011-08-20 18:43:27
【问题描述】:

我的问题很简单。

我正在用 php 编写一个上传器类,并决定包含对 ajax 上传的支持。

使用 firefox,我检测到发送了标头 X-File-Name。我正在使用第 3 方 javascript 库进行上传,它将查询字符串中的文件名发送到 php 脚本。

我想知道的是,是否有一种一致的方式来获取文件名,例如通过与所有 ajax 请求一致的 X-File-Name 或者我需要用户指定文件名。

我可以要求用户指定,但我希望有一个一致的方法。

谢谢。

【问题讨论】:

  • 什么Ajax上传,能具体说明一下吗?有多种上传方法,非正式地称为“Ajax 上传”

标签: php javascript ajax upload header


【解决方案1】:

我相信$_FILES[inputname][name] 是您要查找的内容,其中inputname 是文件上传输入框的名称。

http://php.net/manual/en/reserved.variables.files.php

【讨论】:

  • 我说的是 ajax 请求。文件是通过 php 中的输入流发送的,所以我怀疑是否设置了全局变量 $_FILES。
  • Style niggle: $_FILES['inputname']['name'] 是首选,因为您的代码不正确(除非您想使用全局常量 'name' 来获取数组键 -你不在这里)。
  • 我怀疑这会起作用,因为客户端必须通过发送的标头通知 php 脚本数据是文件。我认为并非所有插件都是如此,并且会导致麻烦。实际上,我读取了文件的输入流。笔记。我正在尝试开发一种便携式课程,而不是仅供个人使用。
【解决方案2】:

在 xhr 的世界里似乎没有什么是具体的。因此,如果我找到了 X-File-Name 标头,但需要用户提交的文件名,我就会使用它。从输入流中读取上传。

【讨论】:

    猜你喜欢
    • 2010-12-20
    • 1970-01-01
    • 2011-08-16
    • 2012-02-22
    • 1970-01-01
    • 1970-01-01
    • 2014-11-12
    • 2023-04-10
    相关资源
    最近更新 更多