在我看来,我正在获取所有可用的插槽,因此用户可以单击书籍按钮来预订该插槽。但是,我似乎无法找到获取正确值(输入的ID)的方法,因此我可以将数据库中特定预订的状态设置为预订。
index.blade.php
@if(count($slots) > 0)
<table class="table table-striped">
<tr>
<th>Date</th>
<th>Time</th>
<th></th>
</tr>
@foreach($slots as $slot)
<tr>
<td>{{$slot->date}}</td>
<td>{{$slot->time}}</td>
<td>
<input name="id" value="{{$slot->id}}" type="hidden"> THIS IS WHAT I WANT TO SEND
<button class="btn btn-primary pull-right" type="submit">Book</button>
</td>
</tr>
@endforeach
BookingsController.php
public function store(Request $request)
{
$booking = new Booking;
$booking->user_id = auth()->user()->id;
$booking->date_id = THIS IS WHAT I NEED;
DB::table('calendar')
->select('id','status')
->where('id', GET DATE ID)
->update(['status' => 1]);
$booking->save();
return redirect('/bookings')->with([
'success' => 'Booking successful!',
]);
}
答案 0 :(得分:2)
使用请求对象检索您发送的参数:
$whatYouNeed = $request->id
(或一般$request->WhateverYouNamedYourField
)
编辑:这与隐藏字段无关,它适用于任何类型的表单字段。
答案 1 :(得分:0)
在商店功能中,您是Typehinting Request。
store(Request $request)
第一个请求指的是请求处理程序。 所以,如果你把它放在你的后面。
$booking->date_id = $request->input('id')
这是你的答案。
您正在请求来自请求输入的输入ID
答案 2 :(得分:0)
$request->all();
或
$request->get('filedName');
或
$request->fieldName;
或
$request->input('fieldName');
这些是获取输入的方式,包括隐藏的输入