Laravel中控制器中的复选框值

时间:2020-06-28 16:39:01

标签: laravel checkbox view controller

我试图获取通过复选框选择的所有付款,然后将数据库中的值更新为“ 1”,表示已付款。但是,当我尝试获取复选框数组的值时,我在数组中仅获取1个数据,而未全部选中。有帮助吗?

查看

<Route 
    path={path} 
    component={
        (props) => <About someProp={props.someProp}/>
    }
/>

控制器

@foreach($sellerID as $p)
   <form action="/paid/{{$p->id}}" method="post" enctype="multipart/form-data">   
        @csrf
     <td><input type="checkbox" name="checked[]" value="{{ $p->id }}"></td>
     <td> {{$p->order_number}} </td>
     <td>
         <input id="commission" type="text" class="form-control" name="commission" 
         value="{{ $p->commission_value }}" readonly  autocomplete="notes" style="width: 15%;" autofocus>
     </td>
                                        
     <td> {{$p->product_name}} </td>
     <td> 
         @if($p->sellet_commission_paid == '0')
            <button type="submit" class="btn btn-default" style="background-color:red">
                <b><em>UNPAID</b></em>
            </button>
         @else
            <a href="#" class="btn btn-default" style="background-color:green"><b><em>PAID</b></em></a>
         @endif                                    
     <td>   
  </form>
@endforeach

2 个答案:

答案 0 :(得分:0)

您几乎可以将任何您喜欢的内容放入表单中,但不能放入表格中。表格具有更严格的结构,必须遵循。

您可以用1个表格包装整个表格,然后提交所有表格,然后提取所需的详细信息,而不用表格包装表格行

您需要将所有输入元素放入表单中:

<form action="/route">
   <input ...../>
   <div>
      <input ...../>
   </div>
</form>

默认情况下,与表单相关的元素与其祖先的form元素相关联,但是可以指定一个form属性来覆盖它。

如果与表单相关的元素指定了表单属性,则该属性的值必须是元素所有者文档中表单元素的ID。

答案 1 :(得分:0)

尝试使用foreach循环。

foreach($request->input('checked') as $check){
  [sample variable] = $check;
 }

该数组现在将存储为$ check,您应该能够从输入中获取每个值