Hi
I am not sure I am approaching this correctly.
I need to increment the appointment time by 15 mins for each loop.
This is would be the correct result:
13:00, 13:15, 13:30, 13:45, 14:00,
This is what I am getting:
13:15, 13:15, 13:15, 13:15, 13:15
The user selects the first appointment example 13:00:00 hrs (HH:MM)
and one or more time blocks. Time blocks range from 1 to 10. Each is 0.15 mins (H).
$event_time = 13:00;//start time
$time_block = 5;// number of loops
$event_length = 0.15;//start time increment by
<?php
/**--------------------------insert appointment in database--------------------------**/
//loop the number of time blocks
for($i = 0; $i < $time_block; $i++)
{
/**---------------------calculate total duration---------------------**/
//Note: event time length * time_block = total event duration
//split event time
list($event_hour, $event_min) = explode(".",$event_time);
//event length
list($length_hour, $length_min) = explode(".",$event_length);
//convert event time to minutes
$event_minutes = ($event_hour * 60) + $event_min;
//convert event time length to minutes
$length_minutes = (length_hour * 60) + $length_min;
//add event time to event duration = next event time
$total_min = $event_minutes + $length_minutes++;
//convert minutes to hours and minutes
if($total_min < 0)
{
$min =Abs($total_min);
}
else
{
$min = $total_min;
}
$H = Floor($min/60);
$M = ($min - ($H * 60))/100;
$hours = $H + $M;
if($total_min < 0)
{
$hours = $hours * (-1);
}
$expl = explode(".",$hours);
$H = $expl[0];
if(empty($expl[1]))
{
$expl[1] = 00;
}
$M = $expl[1];
if(strlen($M) < 2)
{
$M = $M . 0;
}
$new_event_time = $H.".".$M;//total duration
/**-------------------database insert statement goes here ------------------**/
}
<?