Level 67
@thomas.midhun1@gmail.com your start_time likely isn't being set. Do a dump($data) inside the for loop of the updateHour method to see what is happening.
1 like
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
my controller code
public function updateHour(Request $request,$dayId)
{ $data=$request->validate([
'staff_schedule_day_id' =>'required',
'start_time' => 'required',
'end_time' => 'required'
]);
$hourId=StaffScheduleDayHour::where('staff_schedule_day_id',$dayId)->get()->pluck('id');
for ($i=0; $i<count($hourId); $i++) {
StaffScheduleDayHour::
where('staff_schedule_day_id',$dayId)
->update($data);
}
return view('staff.schedule.edit', $data)->with('success', trans('messages.itemUpdated'));
}
Blade Codes
<form action="{{ route('staff.schedule.updateHour',$day->id)}}" method="post" id="form2" >
@csrf
@method('patch')
<input type="hidden" value="{{$day->id}}" name="staff_schedule_day_id" required>
@foreach($staffSchedulesDayHour as $hour)
@if($day->id==$hour->staff_schedule_day_id)
<div class="input-group mb-3 " >
<div class="input-group-append">
<input type="time" class="form-control" value="{{$hour->start_time}}" name='start_time' required>
<input type="time" class="form-control" value="{{$hour->end_time}}" name='end_time' required>
</div>
</div>
@endif
@endforeach
</form>
Error
SQLSTATE[23000]: Integrity constraint violation: 4025 CONSTRAINT `staff_schedule_day_hours.start_time` failed for `appointnow1`.`staff_schedule_day_hours` (SQL: update `staff_schedule_day_hours` set `staff_schedule_day_id` = 43, `start_time` = 00:30, `end_time` = 01:00, `staff_schedule_day_hours`.`updated_at` = 2021-04-27 09:00:15 where `staff_schedule_day_id` = 43)
help me please.
Please or to participate in this conversation.