Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Проблема с вычислением времени до нужный даты

Статус
В этой теме нельзя размещать новые ответы.

puff2hx

Ученик
В общем. Сделал систему бонусов которая включается по команде.

/booststart [дней]. С вычислением времени до того,как отключатся бонусы.. взял команду /ban. В о
PHP:
CMD:booststart(playerid, params[])
{
	if(PTEMP[playerid][pLogin] == 0) return true;
	if(PTEMP[playerid][pAdmin] < 9 || dostup[playerid] == 0) return true;
	if(sscanf(params, "d",params[0])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /booststart [дней]");
	new year, month,day;
	getdate(year, month, day);
	new null = params[0];
	SendMes(playerid,COLOR_WHITE,"Бонусы включены");
	mysql_format(DATABASE,QUERY, 300, "INSERT INTO `boost` (`Text`, `boosttime`) VALUES ('BoostTime', '%i')",mktime(5,0,0,day+null,month,year));
	mysql_function_query(DATABASE,QUERY,false,"","");
	booston = 1;
	Kick(params[0]);
	return true;
}
Дальше в загрузку информации о бонусах сделал так.

PHP:
			    new dialog[525];
				strcat(dialog,"Бонус\t\tМножитель\n");
				strcat(dialog,"Опыт\t\t3.0000\n");
				strcat(dialog,"Донат\t\t2.0000\n");
				strcat(dialog,"Патронов в Аммо\t\t3.0000\n");
				strcat(dialog,"Патронов у Мафий\t\t3.0000\n");
				strcat(dialog,"Патронов у Банд\t\t3.0000\n");
				strcat(dialog,"Патронов у Байкеров\t\t3.0000\n");
				strcat(dialog,"Опыт Такси\t\t3.0000\n");
				strcat(dialog,"Опыт Продуктовозов\t\t3.0000\n");
				strcat(dialog,"Опыт Дальнобойщиков\t\t3.0000\n");
				strcat(dialog,"Опыт Автоугонщиков\t\t3.0000\n");
				strcat(dialog,"Скилл Ударов\t\t3.0000\n");
				strcat(dialog,"Скилл Оружия\t\t3.0000\n");
				strcat(dialog,"Скидка в Автосалоне\t\t0.8000\n");
				strcat(dialog,"Скидка на Скины\t\t0.8000\n");
				strcat(dialog,"Скидка на Квартиры\t\t0.6000\n");
				strcat(dialog,"Процент в Костях\t\t0.5000\n");
				strcat(dialog,"Приз в Дерби\t\t3.0000\n");
				strcat(dialog,"Приз в Гонках\t\t3.0000\n");
				strcat(dialog,"Приз в Пейнтболе\t\t3.0000\n");
				strcat(dialog,"Таймер на Ферме\t\t0.3300\n");
				strcat(dialog,"Таймер на Нарко\t\t0.3300\n");
				strcat(dialog,"Промокод\t\t3.0000\n");
				new ban = cache_get_field_content_int(0,"boosttime");
				new year, month, day,hour,minute,second;
				timestamp_to_date(ban,year,month,day,hour,minute,second);
				format(YCMDstr, sizeof(YCMDstr), "Действует до: %02i/%02i/%02i %02i:%02i",day,month,year,hour,minute);
				ShowPlayerDialog(playerid, 9922, DIALOG_STYLE_TABLIST_HEADERS, YCMDstr,dialog,"Закрыть", "");
Опять же
PHP:
				new ban = cache_get_field_content_int(0,"boosttime");
				new year, month, day,hour,minute,second;
				timestamp_to_date(ban,year,month,day,hour,minute,second);
				format(YCMDstr, sizeof(YCMDstr), "Действует до: %02i/%02i/%02i %02i:%02i",day,month,year,hour,minute);
				ShowPlayerDialog(playerid, 9922, DIALOG_STYLE_TABLIST_HEADERS, YCMDstr,dialog,"Закрыть", "");
Вырезал из системы бана.
Проблема в том,что допустим я включил бонус на 1 день. Бонусы включаю допустим 11.03.16. То есть Писать должно Действует до: 12/03/16 05:00

Но он же пишет Действует до: 17/04/16 11:00. Думал что может дата как то не так определяется.. но в /time пишет нормальную дату. С бонусами все. Из за этой проблемы решил проверить /ban которая дается на 30 дней по коду.

Но как только открывается табличка.. пишет опять же неверную дату разблокировки. Есть догадки,что раньше показывало норм дату.. из за того что мод на хостинге был. Но дату он нормально определяет,а вычисление даты - не. Прошу помочь. Может есть догадки.?!
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу