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

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

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

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

Дата разбана.

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

ReWeTo

Компетентный
Всем привет. Как реализовать отображение даты разбана? Сейчас реализовано, если кол-во дней не более 31. То месяц переходит дальше, но если баню на 91.

Дата бана: 27.08.2013
Дата разбана: 87.09.2013.

Т.е. переносится только на след. месяц.

PHP:
stock BannedTime(playerid, day, admin[], reason[])// Баним игрока
{
    new ip[32], name[24], query[256], mysqlname[24], days, month, year, date[56], unbane[100], mysqlip[32], mysqladmin[28], mysqlreason[50];
    GetPlayerIp(playerid, ip, sizeof(ip)); GetPlayerName(playerid, name, 24);
    mysql_real_escape_string(name, mysqlname); // name
    mysql_real_escape_string(ip, mysqlip); // ip
    mysql_real_escape_string(admin, mysqladmin); // admin name
    mysql_real_escape_string(reason, mysqlreason); // reason
    getdate(year,month,days); // real data
    format(date, sizeof(date),"%d/%d/%d",days,month,year);
    if((day + days) >= 31 && month == 1)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-31,(month+1),year);
    }
    else if((day + days) >= 28 && month == 2)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-28,(month+1),year);
    }
    else if((day + days) >= 30 && month == 3)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-30,(month+1),year);
    }
    else if((day + days) >= 31 && month == 4)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-31,(month+1),year);
    }
    else if((day + days) >= 30 && month == 5)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-30,(month+1),year);
    }
    else if((day + days) >= 31 && month == 6)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-31,(month+1),year);
    }
    else if((day + days) >= 30 && month == 7)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-30,(month+1),year);
    }
    else if((day + days) >= 31 && month == 8)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-31,(month+1),year);
    }
    else if((day + days) >= 30 && month == 9)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-30,(month+1),year);
    }
    else if((day + days) >= 31 && month == 10)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-31,(month+1),year);
    }
    else if((day + days) >= 30 && month == 11)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-30,(month+1),year);
    }
    else if((day + days) >= 31 && month == 12)
    {
        month = 1;
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days)-31,month,(year+1));
    }
    else if(day <= 31)
    {
        format(unbane, sizeof(unbane),"%d/%d/%d",(day+days), month, year);
    }
    format(query,sizeof(query),"INSERT INTO `Banned` (`DateBan`, `DateUnban`, `Nickname`, `IP`, `Admin`, `Reason`) VALUES ('%s', '%s', '%s', '%s', '%s', '%s')",date, unbane, mysqlname, mysqlip, mysqladmin, mysqlreason);
    mysql_query(query);
    mysql_free_result(); new string[256];
    format(string, sizeof(string),"{FFFFFF}Вы были забанены на сервере.\n\n\nАдминистратор: %s\nПричина: %s\nДата разбана: %s.", admin, reason, unbane);
    ShowPlayerDialog(playerid,999,DIALOG_STYLE_MSGBOX,"{33CCFF}BANNED",string,"Enter","Exit");
    //GKick(playerid);
}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу