我想上传文件并将其保存到我们目录中的uploads文件夹中。 我已经通过使用该代码完成了.. 但它不起作用..有一个错误..
“警告:move_uploaded_file(uploads / 1341221475 :: 1aaaa.text):无法打开流:第24行/var/www/html/PHP/upload_file.php中的权限被拒绝警告:move_uploaded_file():无法移动第24行/var/www/html/PHP/upload_file.php中的'/ tmp / phpSZhm3c'到'uploads / 1341221475 :: 1aaaa.text'存储于:aaaa / aaaa.text“
请帮助
代码:
if($_FILES["file"]["error"] > 0)
{
echo "ERROR ".$_FILES["file"]["error"]."<br>";
}
else
{
echo "NAME : ".$_FILES["file"]["name"]."<br>";
echo "TYPE : ".$_FILES["file"]["type"]."<br>";
echo "SIZE : ".($_FILES["file"]["size"]/1024)."KB<br>";
echo "Stored in : ".$_FILES["file"]["tmp_name"]."<br>";
if (file_exists("aaaa/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
$target_path = "uploads/";
$target_path = $target_path . time() . $_SERVER['REMOTE_ADDR'] . basename( $_FILES['file']['name']);
move_uploaded_file($_FILES["file"]["tmp_name"],$target_path);
echo "Stored in: " . "aaaa/" . $_FILES["file"]["name"];
}
}
答案 0 :(得分:0)
您的网络服务器在某个用户下运行(例如,“www”)。确保用户具有上传文件夹的写入权限。
答案 1 :(得分:0)
授予Apache(例如)作为输出目录的所有者的权限,然后它将能够创建文件。
答案 2 :(得分:0)
每当使用代码编写文件时,运行代码的用户都应具有权限。在这种情况下,启动apache webserver的人应该有权写入该文件夹。使用chmod命令指定权限。
如果你不太担心安全性,你可以像这样提供777上传文件夹。假设您的uploads文件夹位于/ var / www / html / site / uploads中,则运行
chmod -R 777 /var/www/html/site/uploads
HTH
答案 3 :(得分:0)
确保您的uploads文件夹具有完整权限,以便您可以将文件移入其中。
尝试chmod 777 -R
到uploads目录。例如:
$ sudo chmod 777 -R /var/www/html/PHP/uploads/