move_uploaded_file返回错误代码0,但文件没有上传到我的目录中?

时间:2016-06-27 10:42:43

标签: php codeigniter file-upload

我正在使用codeigniter 3.0.6处理项目,我需要在某些模块中上传图片。问题是move_uploaded_file返回错误代码0,但文件无处可寻。我目前在我的localhost上运行此代码。如果它只返回一个错误代码,那么我可以做一些事情......任何人都可以帮我这个吗?

我也读过Move_uploaded_file() function is not working,我的下面的代码是基于所谓的"工作示例之一"回答..但仍然无法正常工作(错误代码0但目录中找不到文件)。 mkdir($uploaddir, 0777, true);部分似乎没有帮助。

这是我的视图文件(display.php):

<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <form enctype="multipart/form-data" action="submit" method="POST">
            <input type="hidden" name="MAX_FILE_SIZE" value="51200000" />
            Send this file: <input name="userfile" type="file" />
            <input type="submit" value="Send File" />
        </form>     
    </body>
</html>

这是我的控制器文件(test.php):

function display()
{
    $this->load->view('display');
}

function submit() {
    $uploaddir = '/assets/img/guide/';
    $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

    if (!file_exists($uploaddir)) {
        mkdir($uploaddir, 0777, true);
    } 

    echo "<p>";
    if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
        echo "File is valid, and was successfully uploaded.\n";
    } else {
        echo "Upload failed";
    }
    echo "</p>";

    echo '<pre>';
    echo 'Error code:';
    print_r($_FILES['userfile']['error']);
    print "</pre>";     

    echo '<pre>';
    echo 'Here is some more debugging info:';
    print_r($_FILES);
    print "</pre>";     

    echo $this->load->view('display', $this->data);
}

这是我提交表单后的结果:

  

文件有效,已成功上传。

     

错误代码:0

     

以下是一些调试信息:Array(       [userfile] =&gt;排列           (               [name] =&gt; Hydrangeas.jpg               [type] =&gt;图像/ JPEG               [tmp_name] =&gt; C:\ XAMPP \ tmp目录\ php46FD.tmp               [错误] =&gt; 0               [size] =&gt; 595284           )

     

1 个答案:

答案 0 :(得分:0)

结果是WERE上传的文件但是没有进入我项目的基本文件夹(D:/ myproject / dev /),文件被上传到硬盘文件夹(D:/)所以我猜错误的解决了。我只需要弄明白如何指导目标文件夹上传..也许我会把它放在另一个问题帖子中。

谢谢大家