Hola que tal amigos tengo un dilema con la asignación de turnos en mi sistema ....se tiene que almacenar todas las actividades que se realicen.

El punto es la asignación de turno de estos trabajadores ... En que turno están registrando ..
Tengo el formulario y en el tengo un campo turno ..
1ro empieza de 06:00:00 a 14:30:00
2do 14:30:00 a las 21:30:00
3ro de las 21:30:00 a las 06:00:00

Intente esta por ejemplo
If (date("G") >= 6 && date("G:i") < "14:30") { echo "value='1'"; } else{}
....
....etc
Así con los tres turnos ...
Con horas cerradas ( 6,14y21) si me da
pero con las medias horas no ...
Que puedo hacer