从文件名创建文件夹并保存文件。但第一个文件夹总是出现问题

我改变了上传的工作方式。我注意到,当我选择要上传的文件夹时,它会选择所有内部文件,甚至从子文件夹中选择所有内部文件,并且在我的主文件夹中有许多子文件夹,并且每个子文件夹中有 2 到 3 个文件。文件名如下。


6-AALIYAH WIGHTON - 299-SOLO-JAZZ-6 YEARS AND UNDER

7-ABIGAIL PALMER - 301-SOLO-LYRICAL-6 YEARS AND UNDER

4-ZOE CAMPBELL - 299-SOLO-JAZZ-6 YEARS AND UNDER.mp3

因此,在文件名中,第二个参数是文件夹名称。例如,在上面 3 个示例名称中,AALIYAH WIGHTON, ABIGAIL PALMER&ZOE CAMPBELL是文件夹名称。需要首先创建它,然后文件将进入这些文件夹。


这是代码。


if(isset($_POST['submit'])){

    foreach ($_FILES['files']['name'] as $i => $name) {

        if(strlen($_FILES['files']['name'][$i]) > 1) {

            $Folder = explode('-', $name)[1];

            $Path = 'BaberZamanTest/TEST/'.trim($Folder);

            

            //First Make Directories or Folder if not exist

            if(!file_exists($Path)){

            mkdir($Path, 0777, true);

            }

            //If the Folder has no file $name in $Path then Move file 

            if(!file_exists($Path.'/'.$name)){

                move_uploaded_file($_FILES['files']['tmp_name'][$i], $Path.'/'.$name);

            }

        }

    }

}


<form method="post" enctype="multipart/form-data">

    <input type="file" name="files[]" id="files" multiple webkitdirectory mozdirectory>

    <input class="button" type="submit" name="submit" value="Upload" />

</form>

现在问题是什么。总体而言,它运行完美。但每次它都会跳过第一个文件夹,或者第一个文件夹中的一些文件。当我选择文件夹时,它会显示正确的文件数量。文件夹中有10子文件夹,所有子文件夹共有22文件总数。当我选择时,它显示正确的文件数量22,但是当上传过程运行时,它经常上传20文件。特别是它只错过了第一个文件夹。所有其他文件夹都工作正常。所有文件都到那里。


请帮助我解决这个问题


MYYA
浏览 127回答 1
1回答

幕布斯6054654

我认为你需要php.ini先编辑你的文件。因为默认的数量max_file_uploads是20,我确信你已经错过了这一部分。去找你public_html并找到php.ini文件。如果不存在,您可以创建一个新php.ini文件,用文本编辑器编辑它并放在那里max_file_uploads=50;或者您想要多少个文件。会起作用的
打开App,查看更多内容
随时随地看视频慕课网APP