0

如何为每次上传创建一个文件夹,但在创建每个文件夹时自动编号?假设我上传一个文件,然后在上传的文件夹中创建一个文件夹 1,然后其他人或同一个人上传另一个文件,然后在上传的文件夹中创建一个文件夹 2?有没有办法做到这一点?

这是我现在拥有的

$name = $_FILES['file']['name'];
$temp = $_FILES['file']['tmp_name'];

move_uploaded_file($temp,"uploaded/".$name);
$url = "www.Mysite.com/uploaded/$name";
mysql_query("INSERT INTO `asktemp` VALUE ('','$suserid','$askeduserid','$name','$url')");
4

4 回答 4

2

你可以这样做:

$upload_dir = 'uploaded/';
$dir = 1;
while(file_exists($upload_dir.$dir) and is_dir($upload_dir.$dir)) {
    $dir++;
}
mkdir($upload_dir.$dir);

这会创建像1,23目录

然后放:

move_uploaded_file($temp,$upload_dir.$dir.'/'.$name);

将您的文件上传到新创建的目录。

于 2013-08-15T09:25:26.150 回答
1

您可能希望将mkdiruniqid结合使用来创建唯一路径。

于 2013-08-15T09:27:19.393 回答
0

只需mkdir动态使用和分配文件夹名称,例如:

$folder_name = $path . "folder_" . $i;
mkdir($folder_name);

要计算$i,您可以例如计算文件夹数并加 1。

于 2013-08-15T09:23:51.680 回答
-3

To get the auto_increment ID assigned to a new row, use mysql_insert_id().

于 2013-08-15T09:19:34.923 回答