---
title: "Medlemar online med global.asa"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/120528-medlemar-online-med-global-asa"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "calson"
published: "2005-01-19T15:56:00.000Z"
updated: "2005-01-19T21:33:21.000Z"
replies: 4
views: 308
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/120528-medlemar-online-med-global-asa"
---

# Medlemar online med global.asa

## #1 — calson, 2005-01-19T15:56Z

Hej
Jag använde detta skript till and räkna aktiva besökare.
Nu vill jag bara räkna antalet inloggade.

Är man inloggad sätts session("id") = id så jag satte in en fråga i min global.asa som frågar om personen är inloggad eller inte.

Som det är nu står det att 0 personer är online fast jag själv är inloggad?

Någon som kan se felet med min global.asa?

```
<SCRIPT Language="VBScript" Runat="Server">

Sub Application_OnStart
Application("online") = 0
End Sub

  Dim objConr, objRs
  Dim strSql
  Dim intMax

Sub Session_OnStart
  If Not session("aktiv") = "1" then
    Session.Timeout = 1

   [B] If session("id") <> "" then[/B]

      Application.Lock
      Application("online") = Application("online") + 1
      Application.Unlock
      Session("aktiv") = "1"

    End If

End If

  Set objConr = Server.CreateObject("ADODB.Connection")
  objConr.Open "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=******; DATABASE=*****; USER=******; PASSWORD=*******; OPTION=3;"

    strSql = "Select * from tblAktiva"
    set objRs = objConr.execute(strSql)

      if objRs("intMax") <> 0 then
	intMax = objRs("intMax")
      else
 	intMax = 0
      end if

  objRs.close
  Set objRs = nothing

    if Application("online") > intMax then
	intMax = intMax + 1
	objConr.execute("Update tblAktiva Set intMax=" &Application("online"))
    end if

  objConr.close
  set objConr = nothing

  Application.Lock

    Application("stats") = "Just nu är det " & Application("online") & " st inloggade på sidan"

  Application.Unlock

End Sub

Sub Session_OnEnd
  Application.Lock
  Application("online") = Application("online") - 1
  Application.Unlock
  Session("aktiv") = "0"
End Sub

</SCRIPT>
```

Tack på förhand

Permalänk: https://www.webforum.nu/p/120528

## #2 — @nders, 2005-01-19T17:49Z

I Session_OnStart är det inga sessionsvariabler som har något värde. Du kan alltså ta bort if-satserna.

Varför sätter du en sessionsvariabel i Session_onEnd?

Om du bara ska räkna inloggade så får du öka på nuffran i koden som sköter inloggningen, och minska när personen loggar ut.

edit: in!=ut.

Permalänk: https://www.webforum.nu/p/1532835

## #3 — calson, 2005-01-19T17:57Z

med utloggningen menar du inloggningen antar jag :P

Jag tänkte att det kanske gick smidigare med global.asa
Men det går ju att lösa utan, som sagt.

sessionen i onEnd skall inte vara där, tack

Permalänk: https://www.webforum.nu/p/1532841

## #4 — @nders, 2005-01-19T18:41Z

Självklart skall "utloggningen" vara "inloggningen". Ibland tänker hjärnan fortare än fingrarna skriver. ;)

Permalänk: https://www.webforum.nu/p/1532860

## #5 — calson, 2005-01-19T21:33Z

känner igen den symptomen :)

Permalänk: https://www.webforum.nu/p/1532971

---

Tråden på webben: https://www.webforum.nu/amne/asp/120528-medlemar-online-med-global-asa
