PHP move_upload_file无法打开流:没有这样的文件或目录

时间:2016-05-19 12:39:33

标签: php file file-upload upload move

我目前正在与Jcrop合作让用户裁剪图像,在裁剪后他们可以上传图片,我想使用php裁剪图像并将文件移动到正确的目录。

这是以下教程:Tutorial

在我的i中有这个输入元素:

<input type="file" name="upload-image" id="upload-image"/>

然后当用Jcrop选择图像裁剪区域时,用户将上传表单。这是PHP的一点不起作用:

 // new unique filename
 $sTempFileName = 'cache/' . md5(time().rand());

 // move uploaded file into cache folder
 move_uploaded_file($_FILES['upload-image']['tmp_name'], "upload/" . $sTempFileName);

然后,当我上传表格时,我得到了这两个错误。

警告:move_uploaded_file(../ upload / cache / 6b769249a48996fd69d527b2412b684e):无法打开流:没有这样的文件或目录

警告:move_uploaded_file():无法将'C:\ wamp1 \ tmp \ phpB1A0.tmp'移动到'../ upload / cache / 6b769249a48996fd69d527b2412b684e'

我已经检查了很多stackoverflow页面但是都使用了一个文件夹来上传图像,但是在本教程中它说它需要将文件上传到缓存文件夹中。这让我觉得我不需要指定要上传的文件夹。

1 个答案:

答案 0 :(得分:1)

确保目标目录(../upload/cache/)存在且可由Web服务器写入。如果你不确定上传/缓存目录应该在哪里,你可以在调用move_uploaded_file之前暂时添加这一行:

echo realpath($sTempFileName);