【问题标题】:My mkdir() function tells me I don't have permission我的 mkdir() 函数告诉我我没有权限
【发布时间】:2013-12-20 05:04:00
【问题描述】:

我正在尝试创建一个目录来存储所有用户的个人资料图片。每当我单击上传按钮时,它都会显示: 警告:mkdir(): Permission denied in /Applications/XAMPP/xamppfiles/htdocs/testing/account_settings.php on line 60

这里是 mkdir() 代码:

$chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
$rand_dir_name = substr(str_shuffle($chars), 0, 15);
mkdir("userdata/profile_pics/$rand_dir_name");

我尝试更改权限:

mkdir("userdata/profile_pics/$rand_dir_name", 0777);

我仍然收到 Permission denied。我做错了什么?

PS:完整代码:

<?php
if (isset($_FILES['profilepic'])) {
    if (((@$_FILES['profilepic'] ['type']=='image/jpeg') || (@$_FILES['profilepic']     ['type']=='image/png') || (@$_FILES['profilepic'] ['type']=='image/gif')) &&     (@$_FILES['profilepic'] ['size'] < 1048576)) {
        $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        $rand_dir_name = substr(str_shuffle($chars), 0, 15);
        mkdir("userdata/profile_pics/$rand_dir_name", 0777);
    } else {
    echo "Upload failed";
    }
}
?>

上传表格:

<form action="" method="POST" enctype="multipart/form-data">
    <img src="<?php echo $profile_pic; ?>" width="70"><br>
    <input type="file" name="profilepic"><br>
    <input type="submit" name="uploadpic" value="Upload Image">
</form>

【问题讨论】:

    标签: php upload mkdir permission-denied


    【解决方案1】:

    命令

    mkdir("userdata/profile_pics/$rand_dir_name", 0777);
    

    只会为新创建的目录设置权限。您需要更改要在其中创建文件夹的目录的权限。

    【讨论】:

      【解决方案2】:

      首先尝试 cd 进入您的个人资料图片目录(并确保您在其中具有写入权限),然后在其中创建目录。

      chdir('userdata/profile_pics'); // Make sure this is writable
      mkdir($rand_dir_name, 0755);
      

      除非您想让系统上的任何用户都可以全局写入该文件夹,否则 chmod 755 应该足以允许网络服务器上传到该目录。

      【讨论】:

      • @user2848575 该文件夹是否相对于 PHP 脚本所在的当前目录?如果没有,请使用完整路径或相应地遍历。例如,如果 userdata 目录比当前目录高 2 级,则使用 chdir('../../userdata/profile_pics'); 使用当前代码,userdata 目录应位于 /Applications/XAMPP/xamppfiles/htdocs/testing/
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-10
      • 2014-02-14
      • 2013-03-20
      • 1970-01-01
      • 2012-07-13
      • 1970-01-01
      相关资源
      最近更新 更多