我有一个简单的文件上传功能,但我无法让它工作! 当我试图使用它时,我一直得到“错误”!
我的html文件:
<form enctype='multipart/form-data' action='upload.php'>
<input type='file' name='myfile' />
<input type='submit' value='Upload image' />
</form>
和我的upload.php文件:
$target = "upload_folder/";
$target = $target . basename( $_FILES['myfile']['name']) ;
if(move_uploaded_file($_FILES['myfile']['tmp_name'], $target))
{
echo "The file was uploaded";
}
else {
echo "Error";
}
..这是我第一次使用它,所以我做了一些愚蠢的事情。 有什么建议吗?
答案 0 :(得分:4)
您错过了表单中的method
属性。尝试添加它:
<form enctype='multipart/form-data' action='upload.php' method="post">
<input type='file' name='myfile' />
<input type='submit' value='Upload image' />
</form>
答案 1 :(得分:0)
通过POST
&amp;另一个是PUT
请求。您尝试使用的方法是POST。在表单标记中添加method="POST"
即可。
表单中的默认值是使用GET
<form enctype='multipart/form-data' method="POST" action='upload.php'>
<input type='file' name='myfile' />
<input type='submit' value='Upload image' />
</form>
答案 2 :(得分:0)
a)文件大小太大,你应该从php.ini
更改它b)有时某些服务器需要一个比“upload_folder /".
更精确的move_uploaded_file路径假设你的php文件位于root文件中,你希望文件转到root / upload_folder。然后这样做:
$target = realpath(dirname(__FILE__))."/upload_folder";
$target = $target . "/" . basename( $_FILES['myfile']['name']) ;
答案 3 :(得分:0)
$ target =“upload_folder /”;
您需要目标文件夹或目录的写入权限。