【问题标题】:PHP - Questions on File UploadPHP - 文件上传问题
【发布时间】:2014-12-23 06:42:50
【问题描述】:

我有一个 PHP 表单,它同时接受数据和文件上传。下图显示了表单的不同部分:

第 1 部分 - 允许用户输入一些表单字段,并上传文件。

第 2 部分 - 显示提交的详细信息,并查看上传的文件。如果需要进行编辑,请继续第 2.1 部分。

第 2.1 部分 - 编辑详细信息

第 3 部分 - 写入数据库并将上传的文件转移到文件夹中。

问题:

1) 在第 2 部分中,我可以使用 $_FILES["fileupload"]["name"] 获取文件详细信息。当文件位于服务器的临时位置时,有没有办法查看文件(单击并打开文件)?

2) 我是否只能在步骤 3 中移动文件位置?

【问题讨论】:

  • 对于Q1 可能显示带有base64 的文件?对于Q2不知道
  • 如果您想稍后对上传的文件进行操作,您必须通过move_uploaded_file() 将其移动/保存到某处,因为一旦您调用的脚本结束,您将无法访问临时文件。您可以将其保存到您自己的临时文件夹并显示它或其他任何内容,然后再将其移动到最终目的地。如果您知道文件很小,您还可以将其作为字符串保存在会话中,并在保存数据时将其写回磁盘。

标签: php file-upload


【解决方案1】:

对于问题 1: 该文件将在请求结束时被删除。因此,如果您想查看它,您需要获取它的内容 (file_get_contents) 或将其移动到不同的位置 (move_uploaded_file)

对于问题 2: 由于文件在第 2 步请求最安全的重定位方法后被删除,使用 move_uploaded_file。

【讨论】:

    猜你喜欢
    • 2010-09-26
    • 1970-01-01
    • 1970-01-01
    • 2013-02-18
    • 2019-01-22
    相关资源
    最近更新 更多