[Ajuda] Verificaзгo de data
#1

Olб pessoal,

Alguem poderia me explicar um poco mais sobre verificaзгo de datas Ex:

Se eu for criar um sistema de Adm por tem ou VIP por tempo a suposiзгo й a seguinte :

Hoje й dia 10/02/2013, e dei um adm de 30 dias para Fulano como eu faзo para verificar que:

se amanha й dia 11/02/2013 que o fulano nгo tem mais 30 dias de adm, mas sim 29 dias.

PS: Isto й uma suposiзгo nгo vou criar um sistema de adm nem de vip por tempo so queria uma breve explicaзгo de verificaзгo de datas, pois qualquer um pode pegar uma coisa com CTRL+C, mas eu prefiro entender a funзгo, pois futuramente eu posso usa-la para outro sistema.


Grato.
Reply
#2

Nгo entendo muito do caso mais acho que seria algo como:

pawn Код:
Topo
new Dias;

Um SetTimer ou sei lб
Dias --;

No comando
/darvip
Dias += %d;
O '%d' seria a quantidade de dias que vocк setou em /Darvip id nivel dias

Acho que seria assim.
Reply
#3

Quote:
Originally Posted by Gleisson_.
Посмотреть сообщение
Nгo entendo muito do caso mais acho que seria algo como:

pawn Код:
Topo
new Dias;

Um SetTimer ou sei lб
Dias --;

No comando
/darvip
Dias += %d;
O '%d' seria a quantidade de dias que vocк setou em /Darvip id nivel dias

Acho que seria assim.
Obrigado por vocк tentar me ajudar mas, o que eu estou querento aprender й como verificar datas, e nгo como eu irei armazenar, otra coisa VIP por 30 dias era somente o exemplo pra alguem me entender, nгo quer dizer que eu iria fazer.
Reply
#4

https://sampwiki.blast.hk/wiki/Getdate
Reply
#5

pawn Код:
new data[3];

Getdate(data[0], data[1], data[2])
Data[0] = ano
Data[1] = mкs
Data [2] = dia
Reply
#6

isso vai me ajudar muito aproposito se eu salvar a data em uma conta do player com dini

ficando assim:

Data=00/00/0000

teria como eu pega os valores de

Data[0]
Data[1]
Data[2]

usando apenas 00/00/0000

sem repartir os numeros? ex

os dois primeiros caracteres seriam Data[0] o quarto e quinto Data[1] o setimo, oitavo, nono e decimo o Data[2]

ficando assim:

Data[0] = 00
Data[1] = 00
Data[2] = 0000
Reply
#7

faz antes assim

new AdmDays[playerid] = getdate() +30;

usando o getdate dessa froma apenas retorna o numero de dias que passaram desde que comeзou o ano.

sempre que esse user entrar apenas tens que ver se ja passaram os dias por ex:


if(AdmDays[playerid]<= getdate()) etc......
Reply
#8

Quote:
Originally Posted by fodaoeusim
Посмотреть сообщение
isso vai me ajudar muito aproposito se eu salvar a data em uma conta do player com dini

ficando assim:

Data=00/00/0000

teria como eu pega os valores de

Data[0]
Data[1]
Data[2]

usando apenas 00/00/0000

sem repartir os numeros? ex

os dois primeiros caracteres seriam Data[0] o quarto e quinto Data[1] o setimo, oitavo, nono e decimo o Data[2]

ficando assim:

Data[0] = 00
Data[1] = 00
Data[2] = 0000
vocк quer saber como armazenar a data sem ter que repartir simples use uma string


pawn Код:
new year, month, day, data[128];
getdate(year, month, day);
format(data, sizeof(data), "%d/%d/%d", day, month, year);
                            dini_Set(string, "DataSet", data);

//e depois para getar basta

format(str, sizeof(str), "%s", dini_Get(string, "DataSet"));
Reply
#9

Quote:
Originally Posted by Gleisson_.
Посмотреть сообщение
Nгo entendo muito do caso mais acho que seria algo como:

pawn Код:
Topo
new Dias;

Um SetTimer ou sei lб
Dias --;

No comando
/darvip
Dias += %d;
O '%d' seria a quantidade de dias que vocк setou em /Darvip id nivel dias

Acho que seria assim.
Para isso funcionar o jogador vai ter q ficar 24hrs online.

--

Utilize UnixTimeStamp (gettime), despois sу converter para data, existem includes que fazem isso.
Reply
#10

Quote:
Originally Posted by Sky_.
Посмотреть сообщение
vocк quer saber como armazenar a data sem ter que repartir simples use uma string


pawn Код:
new year, month, day, data[128];
getdate(year, month, day);
format(data, sizeof(data), "%d/%d/%d", day, month, year);
                            dini_Set(string, "DataSet", data);

//e depois para getar basta

format(str, sizeof(str), "%s", dini_Get(string, "DataSet"));
Acho que vocк nгo intendeu estou querendo comparar datas, mas para isso preciso de uma funзгo que mostre que 01/02/2013 й Menor que 02/01/2013
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)