我需要使用 php 上传文件,我做到了......现在我的问题是我想为每个用户创建一个新文件夹,让我向您解释如何??
我的任务是让用户可以登录并访问他们的帐户和文件上传。如果用户将上传任何文件,它将转到名为"uploads"的目标文件夹。现在我想在上传文件夹中使用上传文件的特定用户名创建新文件夹......所以我想为每个用户创建一个带有用户名的新文件夹......谁能告诉我怎么做???
这是我的目标 php 代码:
if(move_uploaded_file($_FILES['upl']['tmp_name'], '../uploads/'.$_FILES['upl']['name']))
{
echo '{"status":"success"}';
exit;
}
提前致谢
你要找的是mkdir
函数。您可以使用以下命令创建目录:
mkdir('/path/to/dir', 0700);
如 PHP 文档中所述。
尝试使用 -
//check if the folder not exists then create it
if (!file_exists('<rootpath>/<username>')) { //<rootpath> will be the path from document root and <username> will be the username you want
mkdir('<rootpath>/<username>');
}
if(move_uploaded_file($_FILES['upl']['tmp_name'], '<path>/<username>/'.$_FILES['upl']['name'])) // <path> be the relative path
{
echo '{"status":"success"}';
exit;
}
假设您要上传文件夹中uploads/username
文件。
$path = $_SERVER['DOCUMENT_ROOT'].'/uploads';
现在创建文件夹 -
mkdir($path."/".$username); //$username be the username you want
现在上传文件
move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/'.$username.'/'.$_FILES['upl']['name'])
使用mkdir()
函数在用户注册时创建文件夹。
登录后,创建一个存储用户名的$_SESSION
变量。
使用move_uploaded_file()
函数时,将会话变量添加到路径。
move_uploaded_file($_FILES['upl']['tmp_name'], '../uploads/'.$_SESSION['username'].'/'.$_FILES['upl']['name'])
http://php.net/manual/en/function.mkdir.php
http://php.net/manual/en/reserved.variables.session.php
谢谢 SGT...我用这段代码得到了答案
$userfolder = $_SESSION['email'];
//echo $userfolder;
$path = $_SERVER['DOCUMENT_ROOT'].'register/uploads';
if (!file_exists('$path')) {
mkdir($path."/".$userfolder);
}
if(move_uploaded_file($_FILES['upl']['tmp_name'], '../uploads/'.$userfolder.'/'.$_FILES['upl']['name'])){
echo '{"status":"success"}';
exit;
}
再次感谢