You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel 5.8中用jQuery Ajax存储含1500+字段的表单?

如何在Laravel 5.8中存储包含1500多个字段的表单?

表单预览截图

当前控制器仅能获取到1000个字段的数组,但表单实际包含1514个字段,该如何处理此问题?

控制器代码

public function store(Request $request)
{
     dd($request->all());
}

视图文件代码

@extends('main')
@section('content')

<form class="add_form" id="add_form" enctype="multipart/form-data">
@csrf
@method('PUT') 
<input type="text" name="text_1" >
.
.
.
共1514个参数
<button type="button" id="submit" >提交</button>
</form>

@endsection
@push('scripts')

<script type="text/javascript">
  $(document).ready(function(){
    $("#submit").on("click",function(e){
      e.preventDefault();
      if($("#add_form").valid()){
        $.ajax({
          type:"POST",
          url:"{{ route('froms.store') }}",
          data: new FormData($('#add_form')[0]),
          processData: false,
          contentType:false,

          success: function(data){
            if(data.status==='success'){
                  location.reload();
            }else if(data.status==='error'){
                  location.reload();
            }
          }
        });
      }else{
        e.preventDefault();
      }
    });
  });
</script>

@endsection

解决方法

这个问题的核心是PHP默认限制了单个请求的输入字段数量,默认max_input_vars值为1000,超过的字段会被自动忽略。你可以通过以下方式调整:

  1. 修改php.ini配置
    找到服务器上的php.ini文件,修改以下参数:

    max_input_vars = 2000  # 设置为大于1514的数值
    post_max_size = 20M    # 确保表单总数据大小不超过此限制
    upload_max_filesize = 20M  # 如果有文件上传,同步调整此值
    

    修改完成后重启Web服务器(如Apache、Nginx)和PHP服务,使配置生效。

  2. 通过.htaccess调整(Apache环境)
    如果无法直接修改php.ini,可以在项目根目录的.htaccess文件中添加以下内容:

    php_value max_input_vars 2000
    php_value post_max_size 20M
    php_value upload_max_filesize 20M
    
  3. 在项目代码中临时设置
    若上述两种方式都不可行,可在public/index.php文件开头添加以下代码,临时调整PHP配置:

    ini_set('max_input_vars', 2000);
    ini_set('post_max_size', '20M');
    ini_set('upload_max_filesize', '20M');
    

调整完成后,重新提交表单,控制器就能获取到所有1514个字段的数据了。


内容的提问来源于stack exchange,提问作者Bhagvat Joshi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 04:50:22