---
title: "Offline efter Session.TimeOut"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/156015-offline-efter-session-timeout"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "SGuncel"
published: "2007-01-16T11:12:19.000Z"
updated: "2007-02-06T09:31:36.000Z"
replies: 51
views: 1788
page: 1
pages: 3
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/156015-offline-efter-session-timeout"
---

# Offline efter Session.TimeOut

_Sida 1 av 3._

## #1 — SGuncel, 2007-01-16T11:12Z

Jag har sökt i forumet men har kommit fram utan träff som jag vill ha.

Jag vill att användarens status ska bli Offline när sessionen tar slut och när man bara stänger webbläsaren..
Sessionen är 15 min.

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

## #2 — SGuncel, 2007-01-17T15:50Z

Nån som skulle kunna hjälpa? :D

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

## #3 — Kriko, 2007-01-18T07:42Z

Du får fixa det i global.asa
Under "sub Session_OnEnd" skriver du din kod för vad som ska göras när sessionen självdör, till exempel ändrar ett värde i en databas.
Sessionen finns kvar att användas i "sub Session_OnEnd" eftersom funktionen körs precis innan sessionen dör.

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

## #4 — SGuncel, 2007-01-18T11:01Z

Jo, det har jag hör mycket om. Men problemet är att jag har aldrig använt global.asa och vet inte hur det kommer vara.

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

## #5 — Troxy, 2007-01-18T11:09Z

Skapa en fil i din www-root som du döper till "global.asa", sedan slänger du in den här koden:

```
<script language="vbscript" runat="server">

sub Session_OnStart
  'ASP-kod som körs när en session startar
end sub

sub Session_OnEnd
  'ASP-kod som körs när en session dör
end sub

</script>
```

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

## #6 — OveRRidE, 2007-01-18T11:44Z

Att tänka på gällande Session_OnEnd i global.asa: <http://www.webforum.nu/showthread.php?t=57495>

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

## #7 — SGuncel, 2007-01-18T18:45Z

Använder det men det händer inget.
Ska man döpa det global.asa eller global.asa.asp?

```
<SCRIPT LANGUAGE=VBScript RUNAT=Server>

Sub Session_OnEnd

On Error Resume Next
Dim ObjCoon
	Set ObjConn = Server.CreateObject("ADODB.Connection") 
	ObjConn.Open = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("*/*/*.mdb")
If err.Number <> 0 Then
  Response.Redirect("Login/")
  err.Clear
End If '## -- err.Number <> 0 --
On Error GoTo 0

Dim strSQL

strSQL = "Update Tblusers set Stats='Offline' Where UsrID="& Session("UsrId") &""
Conn.Execute(strSQL)

Conn.Close
Set conn = Nothing

Response.Redirect("Login/")
End Sub

</SCRIPT>
```

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

## #8 — @nders, 2007-01-18T20:11Z

> Ska man döpa det global.asa eller global.asa.asp?

global.asa.

> Använder det men det händer inget.

Då får du dubbelkolla koden. Ex. kan du ju kontrollera att du stavar connectionobjektet likadant.
I övrigt kan du inte använda response.redirect i global.asa, och du kan inte komma åt session("usrid"). Det enda du kan komma åt är det sessions-id som webbservern tilldelar (session.sessionid), så du får se till att lagra detta i användartabellen vid inloggning.

Till sist: läs emissions [tipstråd om tomsträngskonkatenering](http://www.webforum.nu/showthread.php?t=142490).

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

## #9 — SGuncel, 2007-01-18T20:57Z

Okej, men jag aldrig hållit på med global.asa så jag vet ingeting. Fick denna koden från en kille.

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

## #10 — SGuncel, 2007-01-20T22:59Z

```
<SCRIPT LANGUAGE=VBScript RUNAT=Server>

Sub Session_OnEnd

Dim ObjCoon
  Set ObjConn = Server.CreateObject("ADODB.Connection") 
  ObjConn.Open = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("*/*.mdb")

Dim strSQL
strSQL = "UPDATE TLUsers SET UsrStats='Offline' WHERE LastUsrLogin<#"& DateAdd("n",Now(),-15) &"#"
ObjConn.Execute(strSQL)

ObjConn.Close
Set ObjConn = Nothing

End Sub

</SCRIPT>
```

Denna funkar inte heller. Skulle någon hjälpa mig?

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

## #11 — Poffe, 2007-01-20T23:03Z

Börja med att läsa tråden som OveRRidE länkade till här ovan. Där står bl.a. att du inte kan använda mappath i Session_OnEnd.

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

## #12 — SGuncel, 2007-01-21T00:03Z

Om man inte användet det. Hur ska man gör då? :S

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

## #13 — emission, 2007-01-21T00:41Z

Ange den riktiga sökvägen till mdb-filen direkt. Vet inte vad den är så skriv

```
Response.Write Server.MapPath("databasen.mdb")
```

På en asp-sida (inte i global.asa) och klistra in resultatet i global.asa

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

## #14 — SGuncel, 2007-01-21T13:22Z

> **emission skrev:**
>
> Ange den riktiga sökvägen till mdb-filen direkt. Vet inte vad den är så skriv
> 
>
>
> ```
> Response.Write Server.MapPath("databasen.mdb")
> ```
>
> 
> 
> På en asp-sida (inte i global.asa) och klistra in resultatet i global.asa

Har gjort som du sa, men det fungerar inte heller.

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

## #15 — SGuncel, 2007-01-23T21:40Z

Ingen hjälp?

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

## #16 — Poffe, 2007-01-23T22:10Z

Visa koden du har nu så kanske vi kan se vad som är fel, det är lite svårt att gissa.

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

## #17 — SGuncel, 2007-01-23T22:12Z

\[code\]\<SCRIPT LANGUAGE=VBScript RUNAT=Server\>

Sub Session_OnEnd

Dim ObjCoon
  Set ObjConn = Server.CreateObject("ADODB.Connection") 
  ObjConn.Open = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.MapPath("C:\\home\\xxx\\xxx\\xxx.xx\\xxx\\xxxx.mdb ")

Dim strSQL
strSQL = "UPDATE TLUsers SET UsrStats='Offline' WHERE LastUsrLogin\<#"& DateAdd("n",Now(),-15) &"#"
ObjConn.Execute(strSQL)

ObjConn.Close
Set ObjConn = Nothing

End Sub

\</SCRIPT\>\[code\]

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

## #18 — Troxy, 2007-01-23T22:22Z

Du använder ju fortfarande Server.MapPath  ;) 

Skriv den fullständiga sökvägen till databasen direkt i din connection-sträng:

```
ObjConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\home\xxx\xxx\xxx.xx\xxx\xxxx.mdb"
```

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

## #19 — SGuncel, 2007-01-23T22:50Z

Funkar fortfarande inte.

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

## #20 — @nders, 2007-01-24T04:06Z

Du ska inte ha = efter objConn.open.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/156015-offline-efter-session-timeout  
Nästa sida: https://www.webforum.nu/amne/asp/156015-offline-efter-session-timeout/page2.md
