У меня есть следующая функция на моем сайте:
function Active()
{
............
$num_rows = $db->doQuery('SELECT PremiumDays, PremiumStartTime FROM Premium WHERE AccountID = ?', $_SESSION['AccountID']);
if ($num_rows == -1)
{
$this->Error('ERROR');
$db->getError();
return;
}
$data = $db->doRead();
$data['Status'] = $num_rows == 0 ? '<:SHOW_PREMIUM_STATUS:>' : '<b><font size="2" color="red">Premium is active - <%Days_Remaining%> days remaining.</font></b>';
$replace = array
(
'account_status' => $data['Status'],
'days_remaining' => number_format($data['PremiumDays'])
);
$this->content = Template::Load('account-template', $replace);
}
PremiumDays
столбец содержит такие числа, как 10
,15
,30
и т.п.
PremiumStartTime
содержит дату в этом формате 2018-12-17 21:13:00
То, чего я пытаюсь добиться, — это показать фактические дни премий, оставшихся с days_remaining
, Итак, я считаю, что мне нужно вычесть из PremiumDays
дни, прошедшие с начала премии, основанные на втором столбце PremiumStartTime
,
Что-то вроде этого:
days_remaining = PremiumDays - (NumberOfDaysSincePremiumStarted(DateToday - PremiumStartTime))
Я буду очень признателен, если вы поможете мне с этим. Заранее спасибо!
Задача ещё не решена.
Других решений пока нет …