我正在使用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 )
)
答案 0 :(得分:0)
结果是WERE上传的文件但是没有进入我项目的基本文件夹(D:/ myproject / dev /),文件被上传到硬盘文件夹(D:/)所以我猜错误的解决了。我只需要弄明白如何指导目标文件夹上传..也许我会把它放在另一个问题帖子中。
谢谢大家