Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

cooper

Usuários Logado

Recommended Posts

Caro, esse código abaixo está mostrando os 10 últimos acessos na Intranet, como posso fazer para aparecer os 20 últimos acessos.<%Application.LockIF NOT isArray( Application( "lastTen" ) ) THENDIM dummy( 10, 3 )Application( "lastTen" ) = dummyEND IFlastTen = Application( "lastTen" )Application.UnLockIF lastTen( 9, 0 ) <> "" THENFOR i = 0 TO 9lastTen( i, 0 ) = lastTen( i + 1, 0 )NEXTEND IFFOR i = 0 TO 9IF lastTen( i, 0 ) = "" THEN lastTen( i, 0 ) = Request.Cookies("LOGON_USER")EXIT FOREND IFNEXTApplication.LockApplication( "lastTen" ) = lastTenApplication.UnLock %><% FOR i = 0 TO 9 IF lastTen( i, 0 ) <> "" THEN%> <%=i + 1%<%=lastTen( i, 0 )%><% END IF NEXT %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Achei meio chato isso...rsssMais facil gravar na tabela usuarios o horario do ultimo acesso e depois fazer um top 20... acho mais pratico =)Tipo faz um campo ultimo_acesso, dai guarda o horario e data... depois faz um select pegando os ultimos 20 com o top =)Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites
<% FOR i = 0 TO 19 IF lastTen( i, 0 ) <> "" THEN%> <%=i + 1%<%=lastTen( i, 0 )%><% END IF NEXT %> 

Veja se da certo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Achei meio chato isso...rsssMais facil gravar na tabela usuarios o horario do ultimo acesso e depois fazer um top 20... acho mais pratico =)Tipo faz um campo ultimo_acesso, dai guarda o horario e data... depois faz um select pegando os ultimos 20 com o top =)Abraços

concordo e alem de chado é nada pratico e de baixa performance. utilizar banco facilita as consultas alem de garantir consistencia de dados, pois você sabe usando application qualquer problema no server adeus os dados.Mas se quiser continuar assim, é so substituir onde aparece 10 por 20 e onde aparece 9 por 19Mário Monteiro

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tudo bem, vou fazer com banco.Estou fazendo da seguinte forma:Vcs tem alguma outra forma ou observação?Option ExplicitResponse.Expires = 0Dim objConn, objRs, strQuery, strConnectionSet objConn = Server.CreateObject("ADODB.Connection")objConn.Open "DBQ=" & Server.MapPath("../database/top_acesso.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}","username","password"strQuery = "INSERT INTO top_acesso (nome,data,hora) VALUES ('"&Request.Cookies("LOGON_USER")&"','"&Date&"','"&Time&"')"Set ObjRs = objConn.Execute(strQuery)objConn.closeSet objRs = NothingSet objConn = Nothing

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tudo bem, vou fazer com banco.Estou fazendo da seguinte forma:Vcs tem alguma outra forma ou observação?Option ExplicitResponse.Expires = 0Dim objConn, objRs, strQuery, strConnectionSet objConn = Server.CreateObject("ADODB.Connection")objConn.Open "DBQ=" & Server.MapPath("../database/top_acesso.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}","username","password"strQuery = "INSERT INTO top_acesso (nome,data,hora) VALUES ('"&Request.Cookies("LOGON_USER")&"','"&Date&"','"&Time&"')"Set ObjRs = objConn.Execute(strQuery)objConn.closeSet objRs = NothingSet objConn = Nothing

tipo nesta parada você quer os ultimos 20 acessos realmente ou os ultimos 20 usuarios que acessaram?se for assim serão os ultimos 20 acessos e se for a mesma pessoa que acessar trará ele varias vezes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tudo bem, vou fazer com banco.Estou fazendo da seguinte forma:Vcs tem alguma outra forma ou observação?Option ExplicitResponse.Expires = 0Dim objConn, objRs, strQuery, strConnectionSet objConn =  Server.CreateObject("ADODB.Connection")objConn.Open "DBQ=" & Server.MapPath("../database/top_acesso.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}","username","password"strQuery = "INSERT INTO top_acesso (nome,data,hora) VALUES ('"&Request.Cookies("LOGON_USER")&"','"&Date&"','"&Time&"')"Set ObjRs = objConn.Execute(strQuery)objConn.closeSet objRs = NothingSet objConn = Nothing

tipo nesta parada você quer os ultimos 20 acessos realmente ou os ultimos 20 usuarios que acessaram?se for assim serão os ultimos 20 acessos e se for a mesma pessoa que acessar trará ele varias vezes.
ai faz por update, sempre trocando a data e o horario, que dai não cria varios registros do mesmo usuario por exemplo...é mais facil e seguro =)Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

ai faz por update, sempre trocando a data e o horario, que dai não cria varios registros do mesmo usuario por exemplo...

por isso perguntei, pois se ele quiser os 20 ultimos usuarios e vai ter que testar se o user ja ta cadastrado se não tiver insere se tiver atualiza data/hora do acesso

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caros, com esse Insert está dando esse erro!Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Microsoft Access Driver] Operation must use an updateable query.

Compartilhar este post


Link para o post
Compartilhar em outros sites

posta o codigo do erro

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já foi.

não o codigo mesmo..INSERT....e ser da um write nele e posta ai tb

Compartilhar este post


Link para o post
Compartilhar em outros sites

Option ExplicitResponse.Expires = 0Dim objConn, objRs, strQuery, strConnectionSet objConn = Server.CreateObject("ADODB.Connection")objConn.Open "DBQ=" & Server.MapPath("../database/top_acesso.mdb") & ";Driver={Microsoft Access Driver (*.mdb)}","username","password"strQuery = "INSERT INTO top_acesso (nome,data,hora) VALUES ('"&Request.Cookies("LOGON_USER")&"','"&Date&"','"&Time&"')"Set ObjRs = objConn.Execute(strQuery)objConn.closeSet objRs = NothingSet objConn = Nothing

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique se você tem permissão de escrita na pasta onde se encontra o BD.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salgado, realmente você tinha razão sobre as permissões, mais não basta dar permissão para o MDB tem que ser no próprio diretório também.Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.