有一个表单可以包含大量数据,例如:
<form>
<div>
<input type="hidden" name="item[n][id]" value="">
<input type="hidden" name="item[n][datestamp]" value="">
<input type="hidden" name="item[n][visible_slot]" value="">
<input type="text" name="item[n][title]" value="">
<input type="text" name="item[n][price]" value=""></div>
<input type="text" name="item[n][sizes]" value=""></div>
<textarea name="item[n][description]"></textarea>
<div>
<div>
<input type="hidden" name="item[n][visible_img][k]" value="">
<input type="hidden" name="item[n][photo][k]" value="">
</div>
... k+1 < 10
</div>
</div>
... n+1
</form>
样本数据
$_POST['item'][262] => Array
(
[id] => 71424
[datestamp] => 1610099549
[visible_slot] => true
[title] => ...
[price] => ...
[sizes] => ...
[description] => ...
[visible_img] => Array
(
[0] => true
[1] => true
[2] => true
[3] => false
[4] => true
)
[photo] => Array
(
[0] => https://sun9-8.userapi.com/impf/Q13JyX8Q...um
[1] => https://sun9-70.userapi.com/impf/rTli...pe=album
[2] => https://sun9-36.userapi.com/impf/jJ...=album
[3] => https://sun9-7.userapi.com/impf/r...type=album
)
)
可以有超过 262 个值(这是收到的最后一个值),数字越小,所有内容都完整发送。更改后(在 .htaccess 和 php.ini 中)post_max_size没有给出结果。表格已发送submit。还有什么可以限制传输以及可以连接什么?
PS客户端没有错误,服务器上只是转储到文件
服务器接受的最大变量数由
max_input_varsphp.ini 配置参数控制。© https://www.php.net/manual/en/info.configuration.php
数组的每个字段都是一个单独的查询变量。因此,如果您超过设定的数字,您将失去其他一切。
如果您正在编辑某个表并将所有更改“批量”发送到服务器,那么最好将逻辑更改为使用 Ajax 并一次保存一行。