PHP:上传后文件丢失

PHP:上传后文件丢失,php,cakephp,file-upload,Php,Cakephp,File Upload,上传后,图像字段的print\r输出如下 Array ( [name] => foo.png [type] => image/png [tmp_name] => /tmp/php63EvNo [error] => 0 [size] => 19115 ) 由于错误为零,并且文件大小为非零,因此我假设上载成功 移动上传文件的后续调用失败:移动上传文件(…):打开流失败:权限被拒绝 检查/tmp,在tmp\u name中命名的

上传后,图像字段的
print\r
输出如下

Array 
(
    [name] => foo.png
    [type] => image/png
    [tmp_name] => /tmp/php63EvNo
    [error] => 0
    [size] => 19115 
)
由于
错误
为零,并且
文件大小
为非零,因此我假设上载成功

移动上传文件的后续调用失败:
移动上传文件(…):打开流失败:权限被拒绝

检查
/tmp
,在
tmp\u name
中命名的文件不存在

是什么导致这种行为/如何纠正

谢谢


额外信息: 灯组,运行PHP5,CakePHP 2.0

表格: php/cake代码:

echo $form->input('Foo.image', array('type' => 'file'));
呈现的html:

<input type="file" name="data[Foo][image]"  id="FooImage"/>


在请求结束时删除
/tmp
中临时上载的文件-它们不会长期保存。如果您关心文件,则必须在收到上载请求的过程中使用
移动上载的文件。

很可能是权限问题。还考虑使用CAKEPHP文件夹变量。我拥有的上载组件如下所示:

$file = $this->request->data['Client']['image'];

$filename = $file['tmp_name'];
$filePath = WWW_ROOT . DS . 'files' . DS . $file['name'];

if(move_uploaded_file($filename, $filePath))
    return '/files/'.$file['name']; // saves location of uploaded file

尝试搜索该文件。您可能放错了位置或检查了文件夹权限。我们可以看到
move\u uploaded\u file
part吗?@Joseph-文件夹权限确实是问题所在-
chmod-R 777
在指定位置修复了问题。如果你回答这个问题,我就给你打勾。