Monday, May 20, 2024
 Popular · Latest · Hot · Upcoming
43
rated 0 times [  45] [ 2]  / answers: 1 / hits: 31560  / 6 Years ago, fri, september 21, 2018, 12:00:00

So I've got this code



View:



<div id=checkboxes>
<input type=checkbox class=checkbox name=services value={{ $service->id }} id={{ $service->id }} />
<label class=whatever for={{ $service->id }}><p class=serv-text> {{ $service->service_name }} + ${{ $service->price }} </p></label>
</div>





Controller:





  public function store(Request $request)
{
orders::create(Request::all());
return 'test';
}





Model:





class orders extends Model
{
protected $fillable = [
'category',
'services',
'total_price',
'user_id',
'status',
'user_id'];
}





When I try to submit the form, in the database at services there is only one number even if I checked multiple boxes when I submitted the form.
I've tried to find on google a solution but nothing.


More From » php

 Answers
1

If you have multiple checkboxes like this:



<input type=checkbox name=services value=1/>
<input type=checkbox name=services value=2/>
<input type=checkbox name=services value=3/>


It will send's only one value to server, cause name must be unique. Workaround is to use array inputs:



<input type=checkbox name=services[] value=1/>
<input type=checkbox name=services[] value=2/>
<input type=checkbox name=services[] value=3/>


Then you can grab that input in controller and do something like this:



$services = $request->input('services');
foreach($services as $service){
orders::create($service);
}


Validation of arrays in Laravel:



https://laravel.com/docs/5.7/validation#validating-arrays



More about input arrays:



https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#Handling_multiple_checkboxes



How to get form input array into PHP array


[#53448] Monday, September 17, 2018, 6 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
clifford

Total Points: 86
Total Questions: 114
Total Answers: 111

Location: Wales
Member since Mon, May 17, 2021
3 Years ago
;