0
我有一个简单的脚本,我需要它做的就是创建一个名称为GET变量的目录。当我运行这个脚本时,它似乎没有创建目录。我希望这个目录和PHP文件在同一个目录下。PHP Mkdir不会工作
$dir = $_GET['dir'];
umask(000);
mkdir($_SERVER['DOCUMENT_ROOT']."/".$dir."/",0777);
我有一个简单的脚本,我需要它做的就是创建一个名称为GET变量的目录。当我运行这个脚本时,它似乎没有创建目录。我希望这个目录和PHP文件在同一个目录下。PHP Mkdir不会工作
$dir = $_GET['dir'];
umask(000);
mkdir($_SERVER['DOCUMENT_ROOT']."/".$dir."/",0777);
把一些错误处理放在那里。大多数情况下,错误是不言而喻的。以下摘自PHP手册的摘录显示了如何。
$rs = @mkdir($dirPath, 0777);
if($rs)
{
// success
}else{
// print error information
echo 'an error occurred. Attempting create folder';
echo '<br>dirPath: ' . $dirPath;
echo '<br>php_errormsg: ' . $php_errormsg;
}
你在做什么是非常危险的。就目前而言,我可以在服务器上的任何位置创建服务器可以访问的目录。 **总是**确保在触摸文件系统时,已解析的路径(带有“../”和不是)是您期望的路径。不要让你的用户定义任何文件名或类似的东西。否则,你会打开自己的安全噩梦。 – Brad 2013-03-17 03:45:24