move_uploaded_file无效

时间:2010-02-08 18:49:12

标签: php file-upload

我通过JS上传文件并在会话中存储临时路径。 比我使用以下代码移动文件。

if(move_uploaded_file($_SESSION['temp_img'][$key]['path'], $dest.$bigimg)){

$dest$bigimg在脚本中先前使用数据库中的id定义。

任何想法或替代方案?

3 个答案:

答案 0 :(得分:2)

曼彻克的回答很接近,但并不完全存在。您必须在上传文件的脚本中调用move_uploaded_file。你无法做你正在做的事情,即“在会话中存储临时路径”,因为该路径仅对一个请求有效。

从PHP手册:

  

该文件将从中删除   临时目录在结束时   请求如果它还没有被移走   或重命名。

(强调我的)

答案 1 :(得分:1)

move_uploaded_file检查文件是否已上传到该页面。您实际上是将文件上载到其他PHP脚本,然后存储在会话中。而不是使用move_upload_file使用重命名。

答案 2 :(得分:-2)

$ _SESSION ['temp_img'] [$ key] ['path']的输出是什么,你也有权写入放置文件的网页目录。对于某些主机,您可能需要将其设置为777,以允许Web服务器在那里写入。