Este bate papo foi escrito em ASP e se parece um pouco com o antigo ICQ.
Fácil de usar e instalar, só colocá-lo no servidor e usar. simples assim! 🙂
<% Response.Buffer = True Response.AddHeader "cache-control", "private" Response.AddHeader "pragma", "no-cache" Response.ExpiresAbsolute = #January 1, 2004 00:00:01# Response.Expires=0 %> <% if session("nick") = "" Then response.redirect("index.asp") response.end end if %><% if Trim(request.Form("sair")) = "sair" then Ssql = "SELECT TOP 5 * From online Order by data Desc" Set Srs = Server.CreateObject("ADODB.RECORDSET") Srs.Open Ssql,cn,AdOpenKeySet,AdLockOptimistic Do While Not Srs.eof if Trim(srs("sessao")) = Trim(mysessao) Then srs.delete session("nick") = "" Session.Abandon() response.redirect("index.asp") end if srs.MoveNext Loop srs.close end if Set srs = nothing Set rs = nothing Set cn = nothing set alterar = nothing set cadastro = nothing %>Usuários Online versão 0.01 <% Const AdOpenKeySet = -1 Const AdLockOptimistic = 3 Dim ip, logado, mysessao, rs, sql, atualizar_logado ip = session("nick") logado = now() mysessao = Session.SessionID %>
<% dim cadastro atualizar_logado = False sql = "SELECT * From online" Set rs = Server.CreateObject("ADODB.RECORDSET") rs.Open sql,cn,AdOpenKeySet,AdLockOptimistic Do While Not rs.eof if (strComp(rs("sessao"), mysessao, vbTextCompare)= 0) Then atualizar_logado = True 'response.write "1" else 'response.write "2" end if rs.MoveNext Loop if atualizar_logado = False Then inserir = "insert into online (sessao,data,ip) values('"&mysessao&"','"&logado&"','"&ip&"')" Set insere =cn.Execute(inserir) end if if atualizar_logado = True Then atualizar = "Update online set Data ='"&Now()&"' Where sessao ="&Trim(mysessao)&" " Set alterar = cn.Execute(atualizar) 'response.write "esse atualiza" end if sql = "SELECT TOP 70 * From online Order by data Desc" Set rs = Server.CreateObject("ADODB.RECORDSET") rs.Open sql,cn,AdOpenKeySet,AdLockOptimistic Dim tempo, conte conte = 0 tempo = DateAdd("n", -1, now) response.write "Usuários Online:
" While not rs.eof if rs("data") > tempo then 'response.write rs("sessao")&"
" %> <% if trim(rs("sessao")) <> trim(mysessao) then %>
<% end if %> <% conte = conte + 1 else rs.delete end if rs.MoveNext Wend response.write "
Total: "&conte&"" rs.close %>
by Francke Peixoto