php文件上传的有关问题,修改权限后仍未解决

php中文网
发布: 2016-06-13 13:31:12
原创
1298人浏览过
php文件上传的问题,修改权限后仍未解决
ex.html提供前台上传控件:











ex.php后台处理程序:
if($_FILES["file"]["error"]>0)
{
echo "Error:".$_FILES["file"]["error"]."
";
}
else 
{

if($_FILES["file"]["type"]=="application/pdf") 
{
if(file_exists("/home/sss/文档/".$_FILES["file"]["name"]))
{
echo $_FILES["file"]["naem"]."already exists";
}
else 
{
move_uploaded_file($_FILES["file"]["tmp_name"],"/home/sss/文档/".$_FILES["file"]["name"]);
echo "Stored in:"."/home/sss/文档/".$_FILES["file"]["name"];
}
}
}
?>
错误提示为
/Warning: move_uploaded_file(/home/php上传文件.pdf): failed to open stream: Permission denied in /var/www/html/php/practice/ex.php on line 25 Warning: move_uploaded_file(): Unable to move '/tmp/php1GtkFY' to '/home/sss/文档/abc.pdf' in /var/www/html/php/practice/ex.php on line 25 
修改了文档的权限为777,仍然有问题, 求指教。

------解决方案--------------------
修改 /home/sss/文档 的权限为可读写即可
即 chmod('/home/sss/文档', 0666);

这个目录在 web 范围外,操作系统很可能不让匿名用户赋予执行权
------解决方案--------------------
你这里面怎么会有三个文件?
1、/home/php上传文件.pdf
2、/tmp/php1GtkFY
3、/home/sss/文档/abc.pdf
这里哪两个是一个文件?

如果上传的是/home/php上传文件.pdf:
$_FILES["file"]["name"]:php上传文件.pdf
$_FILES["file"]["tmp_name"]:php1GtkFY
那么abc.pdf哪里来的?你的代码中并没有rename啊?!!

如果实在Linux上,请用 "./home/sss/文档/",不然会从根目录找起
------解决方案--------------------
可能还是apache 没给你相应的权限。改改apache配置文件,给相应目录权限。
------解决方案--------------------
我怀疑你的路径写错了
目标文件的路径都去掉,看看还行不行
相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号