сравняване дали времето е по-голямо от нула

имам код, който искам да изпълня, ако времето е по-голямо от нула. Опитах почти всички решения от stackoverflow, но не получих желания резултат. опитах досега

$query="select TIMEDIFF(date_and_time,NOW()) as time_remaining from exam_schedule";//query to get remaining time from database


if($remaining_time>0)
//run script
else
redirect to another page

if((int)$remaing_time>0)
//run script 
else 
redirect to another page

if($remaing_time>strtotime('00:00:00'))
//run script 
else 
redirect to another page


 if($remaing_time>mktime(0,0,0))
 //run script 
 else 
 redirect to another page

получавам $remaing_time от база данни. това е разликата ч/б (текущо и съхранено време), т.е. stored_time=10:30 ,current_time 10:20, remaining_time=00:00:10


person eexam ilm    schedule 11.10.2015    source източник
comment
Каква стойност съдържа $remaining_time?   -  person John Conde    schedule 11.10.2015
comment
Получавам това от база данни. така че съдържа низови стойности на времето.   -  person eexam ilm    schedule 11.10.2015
comment
и какво съдържа?   -  person Federkun    schedule 11.10.2015
comment
съдържа стойности в този формат 00:00:00   -  person eexam ilm    schedule 11.10.2015
comment
Какво ще кажете за запазването на времевия печат на Unix в db и след това да използвате time() в php и да сравните тези стойности?   -  person Jannis Lehmann    schedule 11.10.2015
comment
пълен код следващия път, може да е как ще изпълните заявката - но не знаем   -  person    schedule 11.10.2015
comment
@eexamilm Моля, кажете ни типа на променливата. gettype — Вземете типа на променлива: echo gettype($remaing_time)   -  person mertyildiran    schedule 11.10.2015
comment
@mertyildiran неговата променлива тип низ.   -  person eexam ilm    schedule 11.10.2015
comment
@eexamilm Това ще е достатъчно: if (strtotime($remaing_time) > strtotime('00:00:00')) { echo "True"; }   -  person mertyildiran    schedule 11.10.2015
comment
Не виждам изпълнението на заявката.   -  person Pedro Lobito    schedule 11.10.2015
comment
@Federico съдържа разликата от два пъти. но това е променлива тип низ   -  person eexam ilm    schedule 11.10.2015


Отговори (2)


Използвайте TIME_TO_SEC за превръщане на HH:MM:SS низ в секунди.

SELECT TIME_TO_SEC(TIMEDIFF(date_and_time,NOW())) AS time_remaining FROM exam_schedule

Тогава направете

if ($remaining_time > 0)
person Federkun    schedule 11.10.2015

Всичко, от което се нуждаех, беше

$remaining_time > "00:00:00"

защото $remaining_time е променлива тип низ.

person eexam ilm    schedule 12.10.2015