• 技术文章 >后端开发 >PHP问题

    php提示上传根目录不存在怎么办

    王林王林2021-09-16 14:36:37原创960

    php提示上传根目录不存在的解决方法:首先赋予根目录权限,检查是否解决问题;如果问题没有得到解决,使用mkdir命令新建文件夹;最后为新创建的文件夹赋予最高权限。

    本文操作环境:windows10系统、php 7、thinkpad t480电脑。

    问题还原:

    在尝试上传图片后得到提示:“上传根目录不存在!请尝试手动创建”。

    解决方法:

    先尝试给权限,如果依然不能解决问题就删除文件夹。然后使用mkdir命令新建一个文件夹,再赋予777权限。

    问题二:

    在用ThinkPHP3上传图片的开发过程中遇到如下几个问题:

    上传根目录不存在!请尝试手动创建:./Uploads/;上传的图片,中文名称乱码;上传文件时会自动生成一个以当前日期命名的文件夹,并将文件保存在其中。

    备注:开发环境为Windows下的Xampp

    附上问题未解决前的代码:

    d057f52db75fe4a0c10f744fef22c7b.png

    以下为三个问题的解决方法:

    问题1

    查资料时有网友说这是文件夹权限问题,可按如下方法解决:
    比如想把上传的图片保存到./Uploads目录里,就把rootPath设置成 './',savePath改成要保存的路径,注意前面不要带“./”。这样最终的保存目录路径为./Uploads/1/。

    $upload->rootPath = "./";
    $upload->savePath = "Uploads/$uid/";

    问题2

    找到ThinkPHP\Library\Think\Upload\Driver\Local.class.php文件中的save方法:

    d17a14438f3d201bdf5e9b571fb8ae6.png

    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培训

    以上就是php提示上传根目录不存在怎么办的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 根目录
    上一篇:php field的用法是什么 下一篇:php如果判断图片存不存在
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• php怎么设置根目录• php如何修改域名的指定的根目录• Yii如何获取网站根目录• linux如何返回根目录命令
    1/1

    PHP中文网