Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 让PHP根据用户选择上载的文件数量获取所有文件_Javascript_Php_Jquery_Mysql_File - Fatal编程技术网

Javascript 让PHP根据用户选择上载的文件数量获取所有文件

Javascript 让PHP根据用户选择上载的文件数量获取所有文件,javascript,php,jquery,mysql,file,Javascript,Php,Jquery,Mysql,File,我正在制作一个“条目提交”表单,人们可以在其中输入一些与他们相关的数据,然后使用滑块选择要上传0到10个文件的数量。我不想把所有10个文件上传字段都放在表单中,因为这会让我的UI看起来很糟糕 因此,我正在生成jQuery代码,允许用户根据他们想要输入的内容更改他们需要的文件上载字段的数量 但是在我的add_entry.php脚本中,我想知道如何让php知道例如是5个输入字段还是3个输入字段。是否有一种获取所有文件输入的命令 提前感谢您的建议 关于如果你想上传很多文件,我强烈推荐。它有一个文件上传

我正在制作一个“条目提交”表单,人们可以在其中输入一些与他们相关的数据,然后使用滑块选择要上传0到10个文件的数量。我不想把所有10个文件上传字段都放在表单中,因为这会让我的UI看起来很糟糕

因此,我正在生成jQuery代码,允许用户根据他们想要输入的内容更改他们需要的文件上载字段的数量

但是在我的add_entry.php脚本中,我想知道如何让php知道例如是5个输入字段还是3个输入字段。是否有一种获取所有文件输入的命令

提前感谢您的建议


关于

如果你想上传很多文件,我强烈推荐。它有一个文件上传队列小部件,非常棒,非常干净,但是你也可以为它构建自己的自定义GUI。如果你需要的话,它还可以分块上传大文件

。这里有一个名为max_file_count的参数,允许您限制用户可以添加到队列中的文件数

您的问题的答案是您设置文件上传输入的名称,如下所示:

然后,您可以在PHP中获得如下文件:

$numberOfFiles = count($_FILES['files']['name']); // The number of files uploaded, but you can easily use a foreach loop. See below.

foreach($_FILES['files']['tmp_name'] as $fileTmpName) {

    // Process each file here using $fileTmpName.

}
Array
(
    [name] => Array
    (
        [0] => foo.txt
        [1] => bar.txt
    )

    [type] => Array
    (
        [0] => text/plain
        [1] => text/plain
    )

    [tmp_name] => Array
    (
        [0] => /tmp/phpYzdqkD
        [1] => /tmp/phpeEwEWG
    )

    [error] => Array
    (
        [0] => 0
        [1] => 0
    )

    [size] => Array
    (
        [0] => 123
        [1] => 456
    )
)

请参阅此链接:

上载的文件存储在superglobal array$\u文件中。 使用多文件上载时,阵列可能如下所示:

$numberOfFiles = count($_FILES['files']['name']); // The number of files uploaded, but you can easily use a foreach loop. See below.

foreach($_FILES['files']['tmp_name'] as $fileTmpName) {

    // Process each file here using $fileTmpName.

}
Array
(
    [name] => Array
    (
        [0] => foo.txt
        [1] => bar.txt
    )

    [type] => Array
    (
        [0] => text/plain
        [1] => text/plain
    )

    [tmp_name] => Array
    (
        [0] => /tmp/phpYzdqkD
        [1] => /tmp/phpeEwEWG
    )

    [error] => Array
    (
        [0] => 0
        [1] => 0
    )

    [size] => Array
    (
        [0] => 123
        [1] => 456
    )
)
使用大小为$\u FILES['name']的count$\u FILES['name']命令,可以检查上载的文件数

在上面的链接中,您可以找到此信息以及一个简单的函数,用于将此数组转换为更方便的格式,如每个文件的数组,而不是每个属性的数组

我希望我在这方面帮了你足够的忙