En PHP y MySQL: cómo determinar si la tienda está abierta o cerrada (¿es verdadero o falso?¿Determinar si la tienda está abierta?
¿También cómo obtener el próximo horario de apertura si la tienda está cerrada?
Ejemplo de Opening_Hours
tabla:
+----+---------+----------+-----------+------------+---------+
| id | shop_id | week_day | open_hour | close_hour | enabled |
+----+---------+----------+-----------+------------+---------+
| 1 | 1 | 1 | 16:30:00 | 23:30:00 | 1 |
| 2 | 1 | 2 | 16:30:00 | 23:30:00 | 1 |
| 3 | 1 | 3 | 16:30:00 | 23:30:00 | 0 |
| 4 | 1 | 4 | 16:30:00 | 23:30:00 | 1 |
| 5 | 1 | 5 | 10:00:00 | 13:00:00 | 1 |
| 6 | 1 | 5 | 17:15:00 | 00:30:00 | 1 |
| 7 | 1 | 6 | 17:15:00 | 01:30:00 | 1 |
| 8 | 1 | 7 | 16:30:00 | 23:30:00 | 0 |
+----+---------+----------+-----------+------------+---------+
El open_hour
y close_hour
son campos de tipo de tiempo. ¿Diseño de mesa está bien?
Ejemplo de los tiempos actuales:
Hora: mar 23:00 - salida: Abierto, 'abierta en mar 16:30-23:30'
hora: 23:40 mar, - salida: Cerrar, 'abierta en jue 16:30-23:30'
abierto el jueves debido a Opening_Hours.week_day = 3
está desactivado
Ahora cómo manejar el tiempo de la medianoche? Esto se vuelve más complicado.
Como se puede ver, el sábado (Opening_Hours.week_day = 5
), que está abierta de 17:15 PM a 1:30 (día siguiente cerrado los domingos)
Si la hora actual es Domingo 1:15 AM, entonces el tienda todavía estaría abierta base en Opening_Hours.week_day = 5
.
salida: Abierto, 'abierta en Sat 17:15-un y media'
Favor de no repetir varias preguntas a la vez. Frena tu problema en partes más pequeñas y pregunta detalles. También esto parece una tarea que no es bienvenida aquí ... –
@ JanHančič NO son preguntas múltiples a la vez.Mi pregunta es cómo averiguar si la tienda está abierta o cerrada. En segundo lugar, esto NO es tarea. – user1246800
Me parece una tarea, pero si dices que no es así, entonces te creo :) –