PHP最大表单提交限制“max_input_vars上限1000”解决方法

今天我在用phpMyAdmin备份导出SQL的时候,结果提示:

警告:当前表单包含的字段多于1000,受限于PHP中max_input_vars值的配置,该次提交有可能忽略其中一部分。

警告:当前表单包含的字段多于1000,受限于PHP中max_input_vars值的配置,该次提交有可能忽略其中一部分。

 

原因:

由于我一个数据库里面的表大约有300张的样子,所有的字段加起来肯定超过了1000。不可能平均一张表还没有4个字段吧!这毕竟是正式项目,又不是测试着玩的。

 

解决方法

解决问题之前,我要先给大家说一点相关的小基础:

1、max_input_vars 表示的是:可以接受多少个 GET/POST/COOKIE 输入变量?

2、php.ini配置中 max_input_vars 默认值是1000。如果此配置被屏蔽掉,也代表默认1000。

3、如非必要,尽量不要将max_input_vars值变大,这种改大限制的方式也是治标不治本。

 

第一种方法:

将 php.ini 中 max_input_vars 值变大。例如:

max_input_vars = 5000

 

第二种方法:

将那些重复的提交信息组,提交前变成一个字段去提交。变成一个字段的方法例如:将信息组变成json或序列化成字符串。

 

最后,再给大家说说我是如何解决这个问题的?

我的解决方法也很粗爆,由于表很多,我直将 max_input_vars 设置为 10000 ;重启PHP让配置生效。

再去用phpMyAdmin备份导出SQL。

备份导出SQL成功后,最后再回去 将 max_input_vars = 10000 改为 1000 再屏蔽掉它。再重启PHP让配置生效。

    A+
发布日期:2020年09月04日 12:35:17  所属分类:PHP
最后更新时间:2020-09-04 12:36:59
标签:
付杰
  • ¥ 99.0元
  • 市场价:129.0元
  • ¥ 39.0元
  • 市场价:39.0元
  • ¥ 98.0元
  • 市场价:298.0元
  • ¥ 199.0元
  • 市场价:399.0元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: