【问题标题】:How to prevent php files from creating folder in parent directories?如何防止php文件在父目录中创建文件夹?
【发布时间】:2016-04-30 19:29:18
【问题描述】:

例如,我有一个父目录和一个文件夹:

mysite.com/Parent_Folder/A_Folder/File.php

File.php 包含以下代码:

<?php
mkdir('/Parent_Folder/A_New_Folder', 0777, true);

我想阻止文件在父目录中创建文件夹。我该如何限制这个?

但是,必须允许在同一目录中创建文件夹,例如以下代码必须有效:

<?php
mkdir('A_New_Folder_in_Current_Directory', 0777, true);

这将导致:

mysite.com/Parent_Folder/A_Folder/A_New_Folder_in_Current_Directory

【问题讨论】:

  • 你是通过输入得到文件夹名,还是一般想限制这个文件?
  • 为什么不在创建之前检查 mkdir() 是否尝试在父目录或当前目录中创建文件夹?
  • @birraa 系统允许用户输入php代码,所以基本上是用户创建文件而不是我。

标签: php directory mkdir subdirectory


【解决方案1】:

你好特隆德罗穆林根!

你可以试试 clean '../../' 你可以测试一下:

文件.php:

<?php

   // from post
   $new_folder = '../../A_New_Folder_in_Current_Directory';
   // you need removed the ../../

   $new_folder_clean = str_replace('../../','',$new_folder);

   //now you create the folder together file.php file.

   mkdir($new_folder_clean, 0777, true);

?>

你也可以设置一个实际的文件夹变量来连接子文件夹。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-27
    • 1970-01-01
    • 1970-01-01
    • 2012-04-02
    • 1970-01-01
    • 1970-01-01
    • 2011-06-20
    • 1970-01-01
    相关资源
    最近更新 更多