Я хочу отобразить все кадровые записи, которые не находятся между текущим временем (столбец) start_time и end_time (столбец) - PullRequest
0 голосов
/ 09 октября 2018

Я хочу отобразить все записи персонала, что текущее время не находится между (столбец) start_time и end_time (столбец), но если текущее время находится между (столбец) start_time и end_time (столбец), то не отображатьимя персонала.

Sched_time_start = '17:00:00';     
Sched_time_end = '17:35:00';     
$time=date("h:i:s");//this is my current time variable//    

вот мой код запроса:

$qry= "SELECT * from personel as A Left join sched as B on A.Per_ID = B.Sched_Per_ID where '$time' NOT BETWEEN B.Sched_time_start AND B.Sched_time_end";     
$qryres = mysqli_query($connect, $qry);      

, поэтому я не хочу отображать персонал, если текущее время находится между 17: 00: 00 и 17: 35:00 ', но когда текущее время ниже 16: 59; 00 или 17:36:00 выше, тогда имя сотрудника отображается в моей опции выбора

вот мой код выбора выбора:

<select>     
<?php while ($rows=mysqli_fetch_array($qryres)) { ?>     
<option><?php echo $rows['Per_fname']; ?></option>     
<?php } ?>     
</select>     

Заранее спасибо

1 Ответ

0 голосов
/ 09 октября 2018

Это может быть несколько вещей:

  1. Вы форматируете время с меньшим значением h: date("h:i:s");.Это вернет 12-часовой формат, а не 24-часовой, поэтому это должно быть: date("H:i:s");.См. PHP: дата - Руководство для получения дополнительной информации.
  2. Если вы используете DATETIME вместо TIME в структуре таблицы MYSQL для столбцов начала и окончания расписания,вам нужно будет включить день, месяц и год в переменную $time.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...