[Ajuda] DOF2 - GET Int + String ?
#1

Olб a todo, boa noite, estou na dъvida de como eu posso fazer essa comparaзгo de data:

pawn Код:
new datacheck[128];
format(datacheck, sizeof (datacheck), "%02d/%02d",Dia,Mes);
Код:
Do jeito que eu fiz, porйm dar esse ERRO:
Error 033: array must be indexed (variable "datacheck")
pawn Код:
if(datacheck < DOF2_GetInt(totalcarros, carro))
Reply
#2

Faзa por unixtime, mais fбcil.
Reply
#3

UnixTime ? Como faria isso ? e realmente й mais fбcil ?
Reply
#4

Sugiro que para comparaзгo de datas utilize Unix Timestamp.

Por exemplo;

PHP код:
new data1 gettime();
new 
data2 data1 86400
data2 й exatamente 1 dia antes que a data1.

Claro que isso й sу um exemplo, a data2 poderia ter sido obtido, de fato um dia antes, e salvo na variбvel de um player.

Digamos que o jogador deslogou a alguns segundos, e relogou. Ao logar podemos solicitar o valor que salvamos.

PHP код:
new login gettime();
new 
tempo login data2;
printf("Seu ъltimo login foi %d segundos atrбs.",tempo); 
Com Unix vocк pode fazer sistemas VIPS, calcular ъltimos logins, bans temporбrios... Й muito importante, e simples.
Reply
#5

Muito complicado, do jeito que eu fiz nгo й mais fбcil ?
Sou um programador de baixa experiкncia, e estou apenas fazendo um favor a um amigo...
Reply
#6

Lуgico que nгo. Trabalhar com nъmeros sempre vai ser a melhor opзгo. Vamos supor que o UNIX de agora seja 100.

PHP код:
new leuisso gettime(); // leuisso serб 100 (EXEMPLO!!!) 
Mas desde o instante que vocк leu o primeiro unix que pegamos, vocк levou 5 segundos... Entгo:

PHP код:
new leuisso2 gettime(); // Serб 105 (EXEMPLO!!!)
new tempoquelevou leuisso2 leuisso;
printf("Vocк levou %d segundos para ler isso.",tempoquelevou"); 
http://en.wikipedia.org/wiki/Unix_time
https://sampwiki.blast.hk/wiki/Gettime

Sobre o fato de ser um pequena experiкncia que vocк tem, o bбsico do bбsico й saber condiзхes e variбveis. Se vocк souber isso fica muito fбcil entender como utilizar unix timestamp
Reply
#7

Й.. verei outro jeito de fazer entгo, й muito complicado isso. :/' Obrigado!
Reply
#8

Quote:
Originally Posted by davi54723
Посмотреть сообщение
Й.. verei outro jeito de fazer entгo, й muito complicado isso. :/' Obrigado!
Vocк quem sabe... Tambйm dб pra comparar datas em string... Mas й bem mais lento, longo, e complicado.

Por exemplo

PHP код:
new data1[11] = "25/03/2015";
new 
data2[11] = "10/04/2010"
Teria entгo que extrair as datas usando sscanf, TROCANDO O ESPAЗO ENTRE OS PARВMETROS PELA BARRA.

PHP код:
new dia[2],mes[2],ano[2];
sscanf(data1,"p</>ddd",dia[0],mes[0],ano[0]);
sscanf(data2,"p</>ddd",dia[1],mes[1],ano[1]); 
E entгo fazer a comparaзгo de datas

PHP код:
if(ano[1] > ano[0])
{
    
// Data1 й antes de Data2
}
else if(
ano[0] > ano[1])
{
    
// Data2 й antes de Data1
}
// A partir daqui, os anos sгo iguais, vamos comparar o mкs.
else if(mes[1] > mes[0])
{
    
// Data1 й antes de Data2
}
else if(
mes[0] > mes[1])
{
    
// Data2 й antes de Data1
}
// A partir daqui, ano e mкs sгo iguais.
else if(dia[1] > dia[0])
{
    
// Data1 й antes de Data2
}
else if(
dia[0] > dia[1])
{
    
// Data2 й antes de Data1
}
else
{
    
// As datas sгo iguais :/

Repito, trabalhar com nъmeros e unix timestamp й mais fбcil.
Reply
#9

'arakuta', vocк poderia me ajudar pelo skype ? o sistema й de concessionaria e й pra vender o carro apуs 7 dias sem uso, pra isso eu preciso fazer a 'venda' de quem nгo entra nele, e do jeito que eu fiz, foi atй simples, porem sem кxito.
Reply
#10

Ajudo apenas via IRC da comunidade do SA-MP PT-BR

https://sampforum.blast.hk/showthread.php?tid=567455
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)