表单提交的数据不全,发现是因为php.ini中max_input_vars限制为1000。
有两种方案:
1. 修改服务器 php.ini 文件中的 max_input_vars 。这个是PHP5.3.9之后开始增加的一个变量。 当超过变量值以后 发送的数据将被自动截断,造成数据丢失。
在修改了max input vars 和post_max_size之后 重启服务器 你会发现 加载的速度变得很慢 。
2.
无需修改max_input_vars 变更传输数据的方式。
以下为原表单 发送一千个数据
<input type="checkbox" class="box-produits" id="box-1" name="checkProduit[]" value="1" />
<input type="checkbox" class="box-produits" id="box-2" name="checkProduit[]" value="2" />
<input type="checkbox" class="box-produits" id="box-3" name="checkProduit[]" value="3" />
。。。。。。
<input type="checkbox" class="box-produits" id="box-1000" name="checkProduit[]" value="1000" />
view中加入
<input type="hidden" id="magicBoxes" name="magicBoxes" class="magicBoxes" value="" />
js中加入
var cb = $('.box-produits:checked').map(function() {return this.value;}).get().join(',');
$('#magicBoxes').val(cb);
对应controller里
$Groupe = $_POST['magicBoxes'];
$Groupe =(explode(',', $Groupe ));
https://www.douban.com/note/629543611/ ;