当前位置: 首页 > 面试题库 >

如何使用PHP处理多个文件上传

阎晗日
2023-03-14
问题内容

我想使用PHP上传文件,但问题是我不知道要上传多少文件。

我的问题是,如果使用该如何上传文件file[]

<form action="upload.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label><input type="file" name="file[]" id="file" /> 
<br />
<label for="file">Filename:</label><input type="file" name="file[]" id="file" /> 
<br />
<input type="submit" name="submit" value="Submit" />
</form>

我将仅添加“文件”框,并使用JavaScript创建更多要上传的文件输入,但是如何在PHP中处理它们呢?


问题答案:

请参阅:$
_FILES
,处理文件上传

<?php
    if(isset($_FILES['file']['tmp_name']))
    {
        // Number of uploaded files
        $num_files = count($_FILES['file']['tmp_name']);

        /** loop through the array of files ***/
        for($i=0; $i < $num_files;$i++)
        {
            // check if there is a file in the array
            if(!is_uploaded_file($_FILES['file']['tmp_name'][$i]))
            {
                $messages[] = 'No file uploaded';
            }
            else
            {
                // copy the file to the specified dir 
                if(@copy($_FILES['file']['tmp_name'][$i],$upload_dir.'/'.$_FILES['file']['name'][$i]))
                {
                    /*** give praise and thanks to the php gods ***/
                    $messages[] = $_FILES['file']['name'][$i].' uploaded';
                }
                else
                {
                    /*** an error message ***/
                    $messages[] = 'Uploading '.$_FILES['file']['name'][$i].' Failed';
                }
            }
        }
    }
?>


 类似资料:
  • 我有一个开关声明,它检查提交的文本中是否存在特定的字符串。 通常,我会创建专用的文件来处理每个的POST数据。 但是如何在一个中处理多个POST。 对于每个ajax数据,我都包含了一个唯一的标识符,这将作为PHP接收到的ajax的参考 但我不确定如何正确地编写PHP代码来处理提交的$_POST类型。

  • 问题内容: 我设计了一个简单的表格,允许用户将文件上传到服务器。最初,表单包含一个“浏览”按钮。如果用户要上传多个文件,则需要单击“添加更多文件”按钮,该按钮会在表单中添加另一个“浏览”按钮。提交表单后,文件上传过程将在“ upload.php”文件中处理。对于上载多个文件,它工作得很好。现在,我需要使用jQuery的’.submit()’提交表单,并将ajax [‘.ajax()’]请求发送至’

  • 问题内容: 我最近一直在尝试使用PHP,到目前为止一直很好,直到碰到一堵墙为止。这是我的一小段代码。它允许我上传单个文件,但是我想要的是能够上传多个文件。 这是PHP和HTML文件: 和PHP文件: 任何帮助将不胜感激。 问题答案: Index.html load.php

  • 我试图理解以下文档: Transferutility.UploadDirectory null null null

  • 但是如何为多个文件做呢? PS.在webflux中有没有另一种上传一组文件的方法?