Ir para conteúdo
Fórum Script Brasil
  • 0

Como Fazer Um Rotina Que Delete Usersonline De Intervalo Em Intervalo


rodrigo_arf

Pergunta

Ola Amigos

Sou Desenvolvedor em Asp.

Minha duvida é a seguinte ! Tenho um sistema em Asp, e o Banco de dados é

Access nele tenho uma Tabela chamada UsuariosOnline e contem os seguintes

campos User_Online_ID, User_Pri_Nome, User_Id, User_Hora. Bom ate ai tudo

certo a questão é a seguinte !!

Preciso de uma Função vejam bem Funtion rsss em Asp que rode internamente

e delete desta tabela todos os Usuarios online que passaram de 1 hora

na Tabela no campo User_Hora os dados são gravados como Texto desse jeito

exemplo: 14:23:12 correto! bom nesta Function tenho que dar um SELECT na

Tabela e Depois DELETAR todos da tabela que já tenham passado de 1 hora,

da hora de acesso ou seja da hora que ele se logou no sistema...

Particularmente é a Hora de acesso menos a Hora Atual mas como faço se

o Usuário iniciou seu acesso por exemplo as 23:35:12 e tera que ser desconectado

do sistema as 00:35:12 correto! mas como monto essa Function com todas as verificações

corretas heheheh essa é a parte dificil, entendem alem de pegar os dados do SELECT e

trata-los pois estão com ":" no meio e estão no formato Texto como disse antes

So reforçando! esta função tera que rodar por exemplo a cada 30 minutos internamente

na verdade, na area administrativa do sistema tera um campo para o Administrador colocar

o intervalo que ele queira que execute esta function ai ele clicando no botão alterar

que tera na pagina esta function recebe este valor e começa a executar neste intervalo de

tempo entendemmm

OBS: O parametro que a função ira receber vira do banco exemplo

30, 20, 60 esse numeros a função executara de intervalo

em intervalo depende do que o Usuario cadastrar no Admin do

Sistema. Ex: de 30 em 30 minutos, de 20 em 20 minuto...

Esta função ainda não esta chamando do banco...

Segue o Começo da Função ai mas tem muita coisa a fazer

'Função de Tarefa autoexecutavel, 
'Limpa UsuariosOnline com mais de
'1 hora ou seja 60 segundos
 Function LimpaUsuariosOnline()
    'Pega os valores da Tabela
    Set rsResgataHora = Server.CreateObject("ADODB.Recorset")
       strResgataHora = "SELECT * FROM UsuariosOnline"
       rsResgataHora.Open strResgataHora, conexao 
    
    'Trata os Valores   
       varHorario = rsResgataHora("User_Hora") 
       arrHoraMinSec = Split(varHorario,":")
       
       varHoraAntigo = Cint(arrHoraMinSec(0))
       varMinuAntigo = Cint(arrHoraMinSec(1))
       varSecoAntigo = Cint(arrHoraMinSec(2))
       
       varNumeroAntigo = varHoraAntigo&varMinuAntigo&varSecoAntigo
    
    'Pega a Hora Atual
       varHoraAtual = Cint(Hour(Now))
       varMinuAtual = Cint(Minute(Now))
       varSecoAtual = Cint(Second(Now))
      
       varNumeroAtual = varHoraAtual&varMinuAtual&varSecoAtual
       
       'Subtrae a hora atual pela hora de acesso
       if varNumeroAtual > varNumeroAntigo then
          varResultado = varNumeroAtual - varNumeroAntigo
       else
          varResultado = varNumeroAntigo - varNumeroAtual
       end if   
       
           'Continua a tratar a variavel varResultados com a Função
       'Left() para colocar os ":" no meio e ai sim comparar e deletar do banco
       'os Usuarios que passaram de 1 hora ou 60 segundos no sistema.
           'Contitua...
        
 End Function

Ufa!!! é Uma tarefa para o Super Man... ou o Home Aranha!!! rsss

isso se o sistema não ficar uma aranha !!!! rsss

Aguardo Posts Periodicamente

Abraços...

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...