php - 带文件上传的多步骤表单

时间:2011-10-05 16:59:40

标签: php file-upload

我似乎无法找到澄清。我有7个步骤,第二个是上传文件。我遇到的问题是,在最后一步,当我完成表单并尝试访问临时文件时,它说“无法访问文件:...”(保存在默认的tmp文件夹中)。

其他多步骤教程说要将其保存在临时文件夹中,然后在完成后移动到相应的文件夹。那么他们是否意味着我将它从默认的临时文件夹移动到我管理的临时文件夹中,然后当他们完成表格时再将其移动到最终文件夹?

3 个答案:

答案 0 :(得分:2)

  

那么他们是否意味着我将它从默认的临时文件夹移动到我管理的临时文件夹中,然后当他们完成表格时再将其移动到最终文件夹?

是的,确切地说。您对接收文件的请求进行了第一次移动,因为当该请求完成时,如果它们仍然存在,PHP将删除它们。

请参阅move_uploaded_fileDocsHandling File Uploads

答案 1 :(得分:0)

使用“临时文件夹”并不代表/temp

上传后,您应该将文件保存在某个文件夹中,也可以将用户的会话ID作为名称。然后,在最后一步,您应该将该文件移动到其最终位置。

一旦创建它们的程序退出(通常在php中,在下一个输出页面发送到客户端之后),就会销毁临时文件(比如实际的临时文件)。

答案 2 :(得分:0)

你可能在错误的地方寻找文件。 PHP将文件存储在临时位置,在$ _FILES数组中以相应索引下的tmp_name给出。这是一个刷新基础知识的好地方:http://www.w3schools.com/php/php_file_upload.asp