я иметь такую форму в представлении:Сохранение массива в столбце базы данных
Your Name: <input type="name" name="name" id="name" ><br><br>
Your Contact No. <input type="contact" name="contact" id="contact" ><br><br>
Todays date:<mark>{{$mytime->format('Y-m-d, l')}}</mark><br><br>
<br><br>BOOK SEATS:<br>
@foreach($seats as $seat)
@if($seat->available=='1')
<input type="checkbox" name="check[]" value="{{$seat->book}}" >{{$seat->book}}<br><br>
@else
<input type="checkbox" name="check[]" value="{{$seat->book}}" disabled>{{$seat->book}}<br><BR>
@endif
@endforeach
<button type="submit" class="btn btn-default">Book</button>
</form>
эта форма перенаправляет к этому контроллеру, который вставляет имя контакта и значение флажка проверяется с петлей. Таким образом, если я проверю два значения и отправлю форму, из-за цикла два строки будут вставлены с такими же name
contact
, но с разными booked_seats
и id
(я использовал id как автоматический прирост). Есть ли способ вставить проверенные значения в signed_seats только с одной строкой. ИЛИ сделать id
одинаковым для любых вставленных строк (проверенных значений) в то время.
public function book(Request $request)
{
$name=$request->get('name');
$contact=$request->get('contact');
$check=$request->get('check');
$totalcheckboxchecked=sizeof('$check');
for($i=0;$i<=$totalcheckboxchecked;$i++)
{
if (array_key_exists($i,$check))
{
$booked=$check[$i];
$book=bus::insert(['name'=>$name,'contact'=>$contact, 'booked_seats'=>$booked, 'active'=>'1']);
seats::where('book',$booked)->update(['available'=>'0']);
}
}
return redirect('/bus')
->with('message','booked successfully!!!');
}
это хорошо. но «a: 2: {i: 0; s: 2:« B1 »; i: 1; s: 2:« B2 »' вставлен в базу данных, я хочу, чтобы B1 и B2 сравнивали эти значения. Я написал запрос на обновление 'seat :: where ('book', $ booked) -> update (['available' => '0']);' –
разделяет два запроса. Для обновления вы можете делать то, что делали ранее. По крайней мере, он не будет вставлять новую строку. –
Я хочу перераспределить, если $ забронировано соответствует значению, хранящемуся в столбце 'book' (в столбце книги есть значения B1, B2, B3, ...) ранее были вставлены B1, B2, B3 ...' a: 2: { i: 0; s: 2: «B1»; i: 1; s: 2: «B2» ' –