move_uploaded_file()无法在PHP中运行

时间:2012-10-09 03:09:47

标签: php

我正在尝试使用此PHP脚本上传文件(图像),但我收到错误。是的,我知道这里有其他问题要求同样的事情,但我没有找到任何有用的问题。

这是我的脚本(简短版):

//*** FILE IS NAMED 'imageUpload' IN THE INC FOLDER ***

$image_name = addslashes($_FILES['image']['name']);
$image_tmpName = $_FILES['image']['tmp_name'];

$location = "usr/profile/$image_name";
move_uploaded_file($image_tmpName,'../img/'.$location);

这是我的文件树(CAPITOLS-folders,lower-file):

1. IMG
    -USR
        *PROFILE
2. INC
    -imageUpload.php

我得到的错误:

Warning: move_uploaded_file(../img/usr/profile/Cheese.jpg) [function.move-uploaded-file]: failed to open stream: No such file or directory in /home/content/35/9611635/html/chsyearbook/inc/imageUpload.php on line 12

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpuLkkjE' to '../img/usr/profile/Cheese.jpg' in /home/content/35/9611635/html/chsyearbook/inc/imageUpload.php on line 12

现在这些错误显然说该目录不存在,但我向你保证,我现在正在看它。

我认为这可能是PHP.ini文件的问题。如果是这样,这里是PHP.ini(为什么不呢,嗯?)

max_execution_time = 60;
memory_limit = 256M;
upload_max_filesize = 256M;
post_max_size =  256M;

1 个答案:

答案 0 :(得分:3)

在php手册页上有一些关于该函数的注释,建议在这里使用相对路径不能按预期工作。

http://us3.php.net/move_uploaded_file

[编辑]

在调用move_uploaded_file之前尝试使用getcwd()函数检查工作目录。这应该告诉你相对路径是什么目录......相对于。