您好,登录后才能下订单哦!
这篇文章主要介绍了如何解决php提示上传根目录不存在的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
php提示上传根目录不存在的解决方法:首先赋予根目录权限,检查是否解决问题;如果问题没有得到解决,使用mkdir命令新建文件夹;最后为新创建的文件夹赋予最高权限。
本文操作环境:windows10系统、php 7、thinkpad t480电脑。
问题还原:
在尝试上传图片后得到提示:“上传根目录不存在!请尝试手动创建”。
解决方法:
先尝试给权限,如果依然不能解决问题就删除文件夹。然后使用mkdir命令新建一个文件夹,再赋予777权限。
问题二:
在用ThinkPHP3上传图片的开发过程中遇到如下几个问题:
上传根目录不存在!请尝试手动创建:./Uploads/;上传的图片,中文名称乱码;上传文件时会自动生成一个以当前日期命名的文件夹,并将文件保存在其中。
备注:开发环境为Windows下的Xampp
附上问题未解决前的代码:
以下为三个问题的解决方法:
问题1
查资料时有网友说这是文件夹权限问题,可按如下方法解决:
比如想把上传的图片保存到./Uploads目录里,就把rootPath设置成 './',savePath改成要保存的路径,注意前面不要带“./”。这样最终的保存目录路径为./Uploads/1/。
$upload->rootPath = "./"; $upload->savePath = "Uploads/$uid/";
问题2
找到ThinkPHP\Library\Think\Upload\Driver\Local.class.php文件中的save方法:
将
if (!move_uploaded_file($file['tmp_name'], $filename))
改为
if (!move_uploaded_file($file['tmp_name'], iconv('utf-8','gb2312',$filename)))
问题3
上传时,默认自动使用子目录保存上传文件,即$upload->autoSub = true;将其设为false即可。
在代码中的上传参数中添加如下代码:
$upload->autoSub = false;
感谢你能够认真阅读完这篇文章,希望小编分享的“如何解决php提示上传根目录不存在的问题”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。