所以我尝试通过HTML表单和一个简单的php脚本来完成一个基本的上传,但是move_uploaded_file函数总是返回false。我已经在目录上运行了"chmod 777"(当我真正让它工作时,我会更多地处理安全问题),"upload"目录在htdocs文件夹中(实际上是Ubuntu Server和Linux Mint中的/var/www)。
以下是表格:
<html>
<body>
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
...和上载文件. php ...
<?php
if ($_FILES["file"]["error"] == 0){
if (file_exists("upload/" . $_FILES["file"]["name"])){
echo $_FILES["file"]["name"] . " already exists. ";
}else{
if(move_uploaded_file($_FILES["file"]["tmp_name"],"/var/www/upload/" . $_FILES["file"]["name"])){
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}else{
echo "Failed to move uploaded file";
}
}
}else{
echo "Return Code: " . $_FILES["file"]["error"];
}
?>
当我试图上传一个小的jpeg时,我得到"移动文件失败"。有什么想法吗?
2条答案
按热度按时间cpjpxq1n1#
您的脚本需要能够写入目标目录,在本例中为/var/www/upload/(这是您更改权限的目录吗?)。此外,您使用的是客户端的本地名称,这可能是一个问题和安全问题(但不一定是这里的原因)。
kyxcudwk2#
当我发现我的操作系统是问题所在时,我想摧毁我的个人电脑。
通过这种方式,您给予每个人对您的文件夹进行写入/读取/删除的权限。