Php mkdir()没有在我的web目录中创建目录

时间:2014-02-20 07:45:25

标签: php

我无法在我的网络服务器中创建新目录。我认为我的代码可以创建一个目录。你能告诉我这是什么错误吗?

$path = "https://wwww.domain.com/astuces/uploads/products/".$id;
if(!is_dir($path)){

    mkdir($path);   

    if(mkdir($path)){
        echo "mkdir is created successfully";   
    }else{
        echo "directory is not created";
        echo mysql_error();
    }
}

它总是显示“目录未创建”。

2 个答案:

答案 0 :(得分:3)

这不仅仅是一个许可问题,你做的事也是不可能的。

$path = "https://wwww.domain.com/astuces/uploads/products/".$id;

您永远不能使用网址作为在服务器中创建目录的路径。

路径应该是您的Web服务器中的路径,如:

$path = "/path/to/your/project/astuces/uploads/products/".$id;

然后确保apache用户拥有该权限。

如果父目录最初也不存在,则必须将第三个参数设置为true的{​​{1}}:

mkdir

答案 1 :(得分:0)

试试此代码

$ path =“https://wwww.domain.com/astuces/uploads/products/”。$ id; 如果(!is_dir($路径)){

$old_umask = umask(0);
mkdir($path, true);  
chmod($path, 0777);
umask($old_umask); 

if(mkdir($path)){
    echo "mkdir is created successfully";   
}else{
    echo "directory is not created";
    echo mysql_error();
}

}