Aprendiz Games ! »
Ola seja bem vindo ao Fórum da Aprendiz Games.
Aqui você pode encontrar Downloads, Tutoriais de Desenvolvimento de servidores entre muitas outras novidades atualizadas.

Para se registrar clique no nome Registrar-se, se já e registrado clique no nome Login e se conecte na sua conta. Muito obrigado por nós escolher.
Aprendiz Games ! »
Ola seja bem vindo ao Fórum da Aprendiz Games.
Aqui você pode encontrar Downloads, Tutoriais de Desenvolvimento de servidores entre muitas outras novidades atualizadas.

Para se registrar clique no nome Registrar-se, se já e registrado clique no nome Login e se conecte na sua conta. Muito obrigado por nós escolher.
Atenção: O fórum está a realizar várias alterações, pedimos desculpa ao incomodo causado.
Informação: Para a proteção de todos, qualquer novo tópico é obrigatório a scan, ou seja, antes de postar um arquivo ou um site faça um scan online.
Aprendiz Games ! »

Crie Servidores como MuOnline, Tibia, Transformice, Habbo Hotel, Gunz Online, DDTank.


Você não está conectado. Conecte-se ou registre-se

 
 

Tempo Onlne Por Char

Mensagem (Página 1 de 1)

#1

๖̶ۣۣۜۜζ͜͜͡͡CØÐ3ᴼᴿᴵᴳᴵᴻᴬᴸ

๖̶ۣۣۜۜζ͜͜͡͡CØÐ3ᴼᴿᴵᴳᴵᴻᴬᴸ
 
Ajudante
Ajudante

Publicado Qua Fev 25, 2015 8:23 pm

 

Como todos sabem, versões mais novas, fazem a função de salvar o tempo online em horas de cada conta. Mas somente por conta, então foi alterado a Tigger original que fica no MSSQL, e fazer que o SQL salve o tempo online por personagem.

1º Passo:

- Crie uma coluna na Table "Character" com os dados:

Nome da coluna: TempoOnline
Tipo da coluna: int
Default Value: 0

- Ou simplesmente use o seguinte código no Query Analizer:


USE MuOnline
ALTER TABLE Character ADD TempoOnline int DEFAULT (0)
2º Passo:

- Vá no Query Analizer e utilize o seguinte código:


DROP TRIGGER MembStat_RecordOnlineHours
- Logo após usar a query acima, limpe o query analizer e utilize a seguinte query:


CREATE TRIGGER [MembStat_RecordOnlineHours] ON dbo.MEMB_STAT
AFTER UPDATE
AS
declare @memb___id varchar(10)
declare @connectstat tinyint
SELECT @memb___id=memb___id,@connectstat=connectstat FROM INSERTED
IF (@connectstat = 0)
BEGIN
UPDATE [dbo].[Character]
SET TempoOnline = TempoOnline + datediff(minute, (SELECT ConnectTM FROM MEMB_STAT WHERE memb___id= @memb___id), getdate())
WHERE Name = (SELECT GameIDC FROM AccountCharacter WHERE Id=@memb___id)
END
- Legenda:

minute = Altere esse valor pelo o que você quizer, se você quer que salve por horas altere esse valor em vermelho para hour

PHP:

Foi criado uma função que converte o tempo de Minutos para Horas, você deverá adicionar esse codigo no começo da sua pagina:


<?php
function Minutos2Horas($Mins) {
$Horas = floor($Mins / 60);
$Minutos = ($Mins - ($Horas * 60)) / 100;
$Sep = explode('.', $Horas + $Minutos);
if (strlen($Sep[1]) < 2) { $Sep[1] = $Sep[1] . 0; }
return sprintf('%02dhs e %02dmin', $Sep[0], $Sep[1]);
}
?>
- E onde deverá mostrar os minutos você adiciona o seguinte codigo:


<?php
print Minutos2Horas(Tempo);
?>
Onde Tempo = Tempo em minutos que será convertido. (A variavel que seleciona o tempo).





Mensagem (Página 1 de 1)

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum


  • Total Posts:
  • Total Members:
  • Newest Member:
  • Most Online: O recorde de usuários online foi de 151 em Ter Abr 06, 2021 3:20 pm

Não há nenhum usuário online :: 0 registrados, 0 invisíveis e 0 visitantes
Usuários navegando neste fórum: Nenhum