Portal SAMP
[Ajuda] Conta criada help!!! - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Conta criada help!!! (/showthread.php?tid=1898)



Conta criada help!!! - Cirilo_Samp - 06/12/2021

Ola quando player cria uma conta no servidor to salvando a data quando a conta foi criada mais queria mostra quanto dia,meses,ano nessa conta foi criada 

Exemplo:

eu criei minha conta hoje ai amanhã vou logar no servidor e dar /info vai mostra minha conta foi criada a 1 dia

Alguém sabe como fasso isso?


RE: Conta criada help!!! - SrBlue - 06/12/2021

qual sistema de salvamento utilizado?



se for database crie nova coluna e aderi os dados timestamp ( use essa lib https://github.com/Agneese-Saini/SA-MP/blob/master/pawno/include/timestamp.inc )

ou se utilizar dof2 ou dini utilize gettime e getdate


RE: Conta criada help!!! - Cirilo_Samp - 06/12/2021

(06/12/2021 17:08)SrBlue Escreveu: qual sistema de salvamento utilizado?



se for database crie nova coluna e aderi os dados timestamp ( use essa lib https://github.com/Agneese-Saini/SA-MP/blob/master/pawno/include/timestamp.inc )

ou se utilizar dof2 ou dini utilize gettime e getdate

 To usando dof e Getdate  mais queria saber como fasso para mostrar quanto tempo a conta foi criada apos nao fasso mínima ideia tipo dar /rg ai mostrar a conta foi criada a 1 mes entendeu?


RE: Conta criada help!!! - xbruno1000x - 06/12/2021

Salva a data de criação da conta e usa o Getdate posteriormente para comparar um com o outro e encontrar a diferença entre as duas.


RE: Conta criada help!!! - SrBlue - 06/12/2021

utilize timestamp...



timestamp1 = Timestamp(2021,12,6);
printf("%d",timestamp1); // timestamp do 06/12/2021

timestamp2 = Timestamp(2021,12,7);
printf("%d",timestamp2); // timestamp do 07/12/2021

por fim faça o calculo


(timestamp2-timestamp1) = valor em segundos
((timestamp2-timestamp2) / 60 ) = valor em minutos
(((timestamp2-timestamp2) / 60 ) / 60 ) = valor em horas...

por fim de um jeito ou outro tens que criar uma função para converter em "string" como exemplo, " você ficou logado por 48 horas ", seria converter o 48 por 2 dias.

essa seria a lógica básica!
obs utilizando a include citada acima quando falei sobre database... ( timestamp.inc )


RE: Conta criada help!!! - ProKillerPa - 07/12/2021

Bom, eu não usaria getdate ( que retorna a quantidade de dias desde o inicio do ano ). Eu utilizaria gettime() para pegar o instante em segundos. Após isso, para você converter os segundos em gettime() para anos/mese/dias/horas/minutos/segundos é apenas matemática básica.

Ao cadastrar, você usa gettime() no salvamento. Após, para você descobrir os dias voce faz: gettime() - DOF2::GetInt(sua_string, "SegundoRegistro");. A partir daqui, você terá a diferença exata em SEGUNDOS. Basta ir dividindo até você encontrar o que procura, se não me engano até existe uma stock pronta na board que você bota o valor em segundos e ele lhe retorna uma string com dias, etc.

Abraços


RE: Conta criada help!!! - Cirilo_Samp - 07/12/2021

(07/12/2021 11:28)ProKillerPa Escreveu: Bom, eu não usaria getdate ( que retorna a quantidade de dias desde o inicio do ano ). Eu utilizaria gettime() para pegar o instante em segundos. Após isso, para você converter os segundos em gettime() para anos/mese/dias/horas/minutos/segundos é apenas matemática básica.

Ao cadastrar, você usa gettime() no salvamento. Após, para você descobrir os dias voce faz: gettime() - DOF2::GetInt(sua_string, "SegundoRegistro");. A partir daqui, você terá a diferença exata em SEGUNDOS. Basta ir dividindo até você encontrar o que procura, se não me engano até existe uma stock pronta na board que você bota o valor em segundos e ele lhe retorna uma string com dias, etc.

Abraços

Obrigado consegui fazer peguei sua ideia ai achdi uma stock que converter para dias meses etc valeu +rep