ユーザーは、1 つの注文に対して複数回入札することはできません。ユーザーが注文を再度クリックすると、以前に注文に入札したことを知らせる応答ページが表示されます。
私のデータは次のように保存されています:
implode
複数のチェックボックスを作成し、コンピューターを保存しました
order.blade.php
<form action="{{ route('store') }}" method="post">
<input type="checkbox" name="computer[]" value="1" id="hp">
<label for="hp">HP</label>
<input type="checkbox" name="computer[]" value="2" id="dell">
<label for="dell">DELL</label>
<input type="checkbox" name="computer[]" value="3" id="asus">
<label for="asus">ASUS</label>
<input type="checkbox" name="computer[]" value="4" id="acer">
<label for="acer">ACER</label>
<input type="checkbox" name="computer[]" value="5" id="sony">
<label for="sony">Sony</label>
<input type="checkbox" name="computer[]" value="6" id="fujitsu">
<label for="fujitsu">Fujitsu</label>
<input type="checkbox" name="computer[]" value="other_barnds" id="other_barnds">
<label for="other_barnds">Other</label>
</form>
OrderController.php
public function store(Request $request)
{
$this->validate(request(), [
'computer' => 'required'
]);
$order = Order::where('user_id',auth()->id())
->where('computer', request('computer'))
->exists();
$order = new Order($request->all());
$order->user_id = auth()->user()->id;
$order->description = $request->description;
$computer = implode(",", $request->computer);
$order->computer = $computer;
$order->save();
if ($order) {
alert()->error('Warning', 'You ordered already');
return redirect()->back();
}
}