POST参数由表单发送,但不存在于php脚本中


POST parameters sent by form but not present in php script

我有一个奇怪的问题。我正在发送一个包含数百个字段的非常大的表格。基本上,我毫不怀疑表单本身没有错误,因为在firefox的控制台中,我可以在请求中看到POST数组存在:

-----------------------------14624305211779581122436169227
Content-Disposition: form-data; name="BlocDocumentDocument[blocsTabulardocumentsTabularn0][n0][file]"
34495153-98c5-4200-8545-2bb71d279ecd
-----------------------------14624305211779581122436169227
Content-Disposition: form-data; name="BlocDocumentDocument[blocsTabulardocumentsTabularn0][n0][title]"
asdf
-----------------------------14624305211779581122436169227
Content-Disposition: form-data; name="BlocDocumentDocument[blocsTabulardocumentsTabularn0][n0][description]"

-----------------------------14624305211779581122436169227
Content-Disposition: form-data; name="BlocDocumentDocument[blocsTabulardocumentsTabularn0][n0][datetime]"
2014-09-19 00:00:00
-----------------------------14624305211779581122436169227
Content-Disposition: form-data; name="BlocDocumentDocument[blocsTabulardocumentsTabularn0][n0][rank]"
1

但是,如果在php中,我在php的第一行打印_r($_POST['BlocDocumentDocument']['blocsTabulardocumentsTabularn']),我会得到以下内容:

Array
(
    [n0] => Array
        (
            [file] => 34495153-98c5-4200-8545-2bb71d279ecd
        )
)

缺少字段。这个问题似乎只有在表单有大量字段的情况下才会发生(我有相同的表单,但字段较少(它们是由javascript生成的),并且它有效)。我已经尝试过增加php的post_max_size,但没有成功。

我发现了问题。这是php的max_input_vars设置。默认情况下,5.3中为1000。