PHP警告:move_uploaded_file():无法移动/无法打开流:权限被拒绝

时间:2013-10-28 13:48:27

标签: php linux file permissions

我在标题中提到了错误!

但是我想写的文件夹看起来像这样

drwxrw-rw- 2 myuser apache 4096 Oct 25 01:18 files

我无法理解为什么。这是我写的代码:

function upload($ext){
    $data = array();
    if((!empty($_FILES["importList"])) && ($_FILES['importList']['error'] == 0)) {
        $filename = basename($_FILES['importList']['name']);
        $fileExt = substr($filename, strrpos($filename, '.') + 1);
        if (($ext == $fileExt) && ($_FILES["importList"]["size"] < 350000)) {
            $newname = $_SERVER['DOCUMENT_ROOT'].'/httpdocs/files/'.$filename;
            if (!file_exists($newname)) {
                if ((move_uploaded_file($_FILES['importList']['tmp_name'],$newname))) { 
                    $data['results'] = "success";
                    $data['filepath'] = $newname;
                    return $data;
                } else {
                    $data['results'] = self::$errorMsg[8001];
                    return $data;
                }
            } else {
                $data['results'] = self::$errorMsg[8002];
                return $data;
            }
        } else {
            $data['results'] = self::$errorMsg[8003];
            return $data;
        }
    } else {
        $data['results'] = self::$errorMsg[8004];
        return $data;
    }
}
}

从这里我得到这个错误$ errorMsg [8001],这意味着它一直到move_upload_file()并失败!由于标题中提到错误..任何人都可以帮忙吗?我需要展示什么才能找到解决方案?

1 个答案:

答案 0 :(得分:1)

根据您的要求,我发布此答案,以便我们关闭它:

尝试向该文件夹添加g + x权限。如果您的PHP在apache组下运行,则需要访问以进入​​目录