linux中的上传文件权限不足,怎么办?

ASASVASDVASD 2013-09-21 12:37:35

<?php
header('Content-Type:text/html;charset=utf-8');

if ($_POST) {
$file = $_FILES['userfile'];
$dest_dir = 'Uploads';
$dest = $dest_dir.time().$file['name'];
if (! $file) {
echo '移动文件出错!';
exit;
} else {
$r = move_uploaded_file($file['tmp_name'], $dest);
echo '恭喜';
}
}
?>

<html>
<head>
</head>
<body>
<form action="test3.php" method="post" enctype="multipart/form-data" name="upform">
文件上传:<input type="file" name="userfile" />
<input type="hidden" name="max_file_size" value="100000" />
<input type="submit" value="上传" />
</form>
</body>
</html>



上传后却显示:
Warning: move_uploaded_file(): The second argument to copy() function cannot be a directory in /usr/local/apache/htdocs/mytest/test3.php on line 28

Warning: move_uploaded_file(): Unable to move '/tmp/phptVKLPP' to 'Uploads' in /usr/local/apache/htdocs/mytest/test3.php on line 28


怎么会这样?我的环境是centos
...全文
613 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2013-09-22
  • 打赏
  • 举报
回复
这不是权限问题! Warning: move_uploaded_file(): The second argument to copy() function cannot be a directory 是说 move_uploaded_file 函数的第二个参数不能是一个目录! 另外 $dest_dir = 'Uploads'; $dest = $dest_dir.time().$file['name']; 是错误的,至少需要 $dest_dir = 'Uploads'; $dest = $dest_dir.'/'.time().$file['name'];
  • 打赏
  • 举报
回复
chmod(dirname(__FILE__) . '/../folder', 0777);
ASASVASDVASD 2013-09-21
  • 打赏
  • 举报
回复
引用 3 楼 zy205817 的回复:
检查下你的临时目录权限。
怎么检查
ASASVASDVASD 2013-09-21
  • 打赏
  • 举报
回复
引用 2 楼 happypiggy2010 的回复:
权限要系统给的。
系统怎么给权限啊。。
ASASVASDVASD 2013-09-21
  • 打赏
  • 举报
回复
引用 1 楼 changjay 的回复:
chmod(dirname(__FILE__) . '/../folder', 0777);
不行啊
码无边 2013-09-21
  • 打赏
  • 举报
回复
检查下你的临时目录权限。
happypiggy2010 2013-09-21
  • 打赏
  • 举报
回复
权限要系统给的。

21,882

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧