MySQL / PHP - время прошло - PullRequest
       2

MySQL / PHP - время прошло

1 голос
/ 02 сентября 2010

Как рассчитать количество 5-минутных периодов, пройденных с типом datetime?

возможно ли это?

//Update AP (+1 points every 5 mins)

//          PLAN OF ACTION (for ap update)!
// 1. check how long it has been since last update 
// 2. calculate how many 5 min periods has passed 
// 3. update $ap accordinly 
if ($last_ap_update != "0000-00-00 00:00:00"){ //Make sure last_ap_update has a value


}
else{ //If the last update is NULL, It must be players first page load. So set datetime equal to NOW
    $query = "UPDATE `stats` SET `last_ap_update` = NOW() WHERE `member_id` = {$_SESSION['SESS_MEMBER_ID']}"; 
    $queryresult = @mysql_query($query);
}

1 Ответ

1 голос
/ 02 сентября 2010

Вычтите прошлую метку времени Unix из текущей метки времени Unix, затем разделите результат на 300 (60 * 5).

Вы можете преобразовать дату и время в MySQL в метку времени Unix:

  • Использование SQL UNIX_TIMESTAMP функция, т.е. SELECT UNIX_TIMESTAMP(last_ap_update)

  • Передать строку даты и времени в PHP strtotime , т.е. strtotime('2009-10-31 12:59:59');

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...