Header

Forum Left Top

Ответ
 
Опции темы Опции просмотра
Старый 28.02.2014, 00:28   #1
Oskaria
 
Status: Гость
Сообщений: n/a
По умолчанию Не правильно расчитывается премиум

Это скорее для Трирожки.

Купил сегодня премиум на 30 дней, однако система рассчитала мне не 30 а 28 дней. Причина в том, что сейчас 28-е число, а скрипт видимо при активации премиума прибавляет единицу к нынешнему месяцу и ставит эту дату в БД. Это не правильно, нужно поправить строчку с определением даты окончания на date('dmY', strtotime('+30 days')); т.е. функции date вторым аргументом передать функцию strtotime('+30 days'), которая верно рассчитает время окончания подписки, прибавив к нанешней дате 30 дней.

Последний раз редактировалось Oskaria; 28.02.2014 в 00:35..
  Ответить с цитированием
Старый 28.02.2014, 15:37   #2
TriRozhka
 
Аватар для TriRozhka
 
Status: Глава проекта
Регистрация: 23.01.2011
Адрес: Москва
Возраст: 35
Сообщений: 1,338
Поблагодарили 79 раз(а) в 42 сообщениях
Вес репутации: 10 TriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетельTriRozhka Великий добродетель
По умолчанию

Вы меня учить пытаетесь ?)
Во-первых прем добавляется процедурой, хранимой на MS SQL сервере, которая сначала анализирует: надо ли добавить прем или активировать его, и потом уже выполняется запрос: EndDate = dateadd(month, 1, EndDate) для продления и EndDate = dateadd(month, 1, getdate()) для активации.

Такой механизм позволяет игрокам получить дополнительно 7 дней према в году, в месяцах где 31 день. Даже за вычетом 2 дней в феврале игроки все равно остаются в выигрыше.

Не вижу смысла что-либо менять.
TriRozhka вне форума   Ответить с цитированием
Старый 28.02.2014, 17:11   #3
Oskaria
 
Status: Гость
Сообщений: n/a
По умолчанию

Я не учу, а советую)
Просто как-то странно, я был уверен, что премиумом управляет именно PHP) У меня просто тоже есть сервис, где услуги оплачиваются на месяц и там используется именно date('Y-d-m', strtotime('+30 days'));.
  Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Forum Right Top
Forum Left Bottom Forum Right Bottom
 
Right Left
Member Login
Забыли пароль?
Forum LeftForum Right


Ссылки:
TriRozhka's Project.ru

Всё о сервере "Real RF"

Рейтинг серверов mmotop Vote on GTOP
Forum LeftForum Right
Right Right
Right Bottom Left Right Bottom Right