Verifique a hora do banco de dados mysql com PHP

Whit:

Tenho duas vezes no mysql DB começar as 10:00 e as 18:00 acabar agora eu quero verificar com PHP se o tempo não é maior ou menor destes dois tempos como fazê-lo? Graças Mysql está definido para TEMPO única sem data e hora, basicamente, eu quero verificar se o tempo agora não é entre o início eo fim. início representam = from2 e final representam to2. Day_id é dia de semana .este é o que não está funcionando

$time_now = date("H:i");
//in DB format 00:00 // time
echo "SELECT * FROM opening_hrs WHERE 
        (TIME(from2) > TIME('".$time_now."')  AND TIME(to2) < TIME('".$time_now."') )
        AND day_id=".$day_id;

quaisquer ideias como verificar o tempo ( "H: I"); entre os tempos de DB?

O. Jones:

Tente esta pergunta, usando noção da hora actual do MySql.

SELECT * FROM opening_hrs 
 WHERE TIME(NOW()) >= TIME(from2)
   AND TIME(NOW()) < TIME(to2)
   AND day_id=whatever

Pro ponta Tenha o cuidado de usar >=para o início de intervalos de tempo e <de suas extremidades, para evitar off-por-um erro.

NOW()é uma operação delicada fuso horário em mysql. Se você fizer isso direito depois de abrir cada conexão MySql. você vai ter a sua hora local de NOW().

SET time_zone = `Australia/Sydney`;

Obvs, usar o seu próprio indicador de fuso horário .

Acho que você gosta

Origin http://10.200.1.11:23101/article/api/json?id=408392&siteId=1
Recomendado
Clasificación