mkdir()不会创建目录

时间:2013-09-23 02:48:23

标签: php mkdir

我正在尝试创建更好的文件组织目录。此前端是用户输入标题,内容和区域(下拉菜单)的表单。当用户提交表单时,数据将被带到名为save.php的文件中并将被处理。以下是save.php文件中的代码。实际上,主要目标是生成一个html文件,然后按区域将这些html文件组织到文件夹中。我不能让mkdir()工作。始终打印出“目录创建”消息,但没有创建实际文件夹。您认为我的代码有什么问题?我想要发生的是,当用户点击“提交”按钮时,将创建具有区域名称的文件夹。请帮忙?或任何建议或其他方式来解决这个问题?

$ad_title = $_POST['title'];
$ad_content = $_POST['content-ads']; 
$ad_region = $_POST['region']; 

if (!is_dir("uploads/"$ad_region)) {
        // dir doesn't exist, make it
        mkdir("uploads/".$ad_region);
        echo "directory created!";
    }
    else {
        echo "directory already exist!";
    }

修改 我不知道这是否重要,但我的 save.php 文件和上传文件夹,上面的代码保存在本地目录中

localhost/system/modules/new

当我在目录

中重新定位 save.php 文件和上传文件夹
localhost/system/

现在似乎都在工作。但我希望它能在localhost / system / modules / new目录下工作,以便更好地组织。对此有何帮助?

3 个答案:

答案 0 :(得分:0)

尝试给它绝对路径..

你也错过了is_dir中的一个点; 应为!is_dir("uploads/" . $ad_region

答案 1 :(得分:0)

您在检查目录是否存在时缺少连接期

if (!is_dir("uploads/"$ad_region)) {if (!is_dir("uploads/" . $ad_region)) {

加上mkdir(path, permission, recursive)的添加权限可以防止头痛;

答案 2 :(得分:0)

通常,当您在Web应用程序中未创建目录时,您正在处理权限问题。

确保运行Web服务的用户(如果其Linux通常是'apache'或'www-data')允许在您尝试创建目录的位置创建目录。