如何遍历每个元素的复选框数组和查询

时间:2016-02-24 18:59:50

标签: php laravel laravel-5

我有一组复选框,允许用户选择事件。每个框的值是其各自表中事件的id。我能够获取已检查的框的值,但我现在需要迭代每个值并在数据库中查询该事件id并在下一个视图上显示该信息。以下是我的观点:

|--------|           |-------|           |--------|
| client |-----------| proxy |-----------| server |
|--------|           |-------|           |--------|

将变量提供给该视图的方法:

@foreach ($events as $events)
  <tr>
    <td>{{$events->Name}}</td>
    <td>{{$events->Summary}}</td>
    <td class="select_event">{!! Form::checkbox('event_name[]', $events->Event_ID) !!}</td>
  </tr>
@endforeach

以及我需要用来从数据库查询的方法:

public function index() {
  $events = Events::all();
  $user = Auth::user()->name;
  $id = 1;
  return view('Delta.Index')->with([
    'user'    => $user,
    'events'  => $events,
    'id'      => $id,
  ]);
}

1 个答案:

答案 0 :(得分:0)

您从表单接收的是一个数组,whereIn函数接受一个混合/数组作为第二个参数。所以你可以做到

$event = \App\Events::whereIn('event_id',$request->input('event_name'))->get();