---
title: "Tömma korgen med global.asa"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/128549-tömma-korgen-med-global-asa"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Calippo"
published: "2005-05-20T10:41:18.000Z"
updated: "2005-05-20T12:18:30.000Z"
replies: 14
views: 331
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/128549-tömma-korgen-med-global-asa"
---

# Tömma korgen med global.asa

## #1 — Calippo, 2005-05-20T10:41Z

Hallå

Jag får inte global.asa att dömma en korg vid Sub "Session_OnEnd".

Under "Sub Session_OnStart" skapar jag "session("strKundid")", den fungerar.

Men den här koden vill inte fungera;

Sub Session_OnEnd
  Set Conn = Server.CreateObject("ADODB.Connection")
  MdbFilePath = "C:\\Inetpub\\wwwroot\\butik\\butiken.mdb"
  Conn.Open = "Driver={Microsoft Access Driver (\*.mdb)}; DBQ=" & MdbFilePath & ";"
  	SQLStmt = "DELETE FROM tblKorgen Where strKundid='"& session("strKundid") &"'"
	Conn.Execute(SQLStmt)
	SET SQLStmt = Nothing
  Conn.Close
  Set Conn=Nothing
End Sub

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

## #2 — @nders, 2005-05-20T10:44Z

Om jag inte missminner mig är det bara Session.SessionID som finns kvar i Session_OnEnd. Du får i så fall lagra det i kundvagnstabellen också om du vill kunna ta bort det i session_onend.

mvh

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

## #3 — Calippo, 2005-05-20T10:54Z

I fältet strKundid i tabellen tblKorgen sparar jag värdet som session("strKundid") har.

Kanske skulle ta och använda session.sessionId istället då för jag fattade inte vad du menade.

Ökar session.sessionId alltid med 1 när en ny browser öppnas av en ny kund?

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

## #4 — @nders, 2005-05-20T10:57Z

Vad var det du inte förstod?

> Ökar session.sessionId alltid med 1 när en ny browser öppnas av en ny kund?

Nä, men alla sessionsid är olika.

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

## #5 — Calippo, 2005-05-20T11:09Z

"Om jag inte missminner mig är det bara Session.SessionID som finns kvar i Session_OnEnd."

Jag använder session("strKundid") istället

"Du får i så fall lagra det i kundvagnstabellen också om du vill kunna ta bort det i session_onend."

Jag antog att du menade att jag ska lagra session("strKundid") värdet i tabellen, det gör jag.

Men Session_OnEnd struntar i det.

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

## #6 — @nders, 2005-05-20T11:16Z

Jag menade att du skulle lagra Session.SessionID i tabellen också / istället, då jag inte tror du har tillgång till några av sessionsvariablerna i Session_OnEnd.

Och jag tror nog att jag tycker att det är bra att strunta i Session_OnEnd för detta. Jag skulle bli galen om min kundvagn tömdes utan att jag ville det, och antagligen skulle jag försöka hitta något annat ställe att handla på. ;)

mvh

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

## #7 — Calippo, 2005-05-20T11:26Z

Ska man använda en cookie istället då?
Har ingen aning hur man lagrar korgen i en cookie...

Jag hämtar innehållet i korgen efter session:et.
Försvinner session:et så kan ju inte korgen visa rätt artiklar.
Det är därför jag tänkte tömma korgen för att den inte ska fyllas på med poster som inte används.

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

## #8 — Calippo, 2005-05-20T11:48Z

Har ändrat till session.sessionid nu men det fungerar inte ändå, artiklarna ligger kvar i korgen när man stänger browsern.

Sub Session_OnEnd
 Set Conn = Server.CreateObject("ADODB.Connection")
  MdbFilePath = "C:\\Inetpub\\wwwroot\\butik\\butiken.mdb"
  Conn.Open = "Driver={Microsoft Access Driver (\*.mdb)}; DBQ=" & MdbFilePath & ";"
   SQLStmt = "DELETE FROM tblKorgen Where intKundid="& Session.SessionID &""
   Conn.Execute(SQLStmt)
  SET SQLStmt = Nothing
  Conn.Close
  Set Conn=Nothing
End Sub

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

## #9 — @nders, 2005-05-20T11:51Z

Ja, servern har ju ingen aning om att du har stängt browsern.

Sessionen tar slut när timeouten inträffar, eller man kallar på Session.Abandon(). Då körs Session_OnEnd.

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

## #10 — Calippo, 2005-05-20T11:56Z

Hmm, har mycket kvar o lära ser jag.

Om servern/datorn startas om, körs Session_OnEnd då?

Hur tycker du att jag ska lösa denna nöt?

Det vore bra om databasen kunde resas automatiskt på artiklar som bara läggs i korgen men inte beställs.

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

## #11 — @nders, 2005-05-20T11:58Z

Session_OnEnd körs ju när sessionen timeoutar. Kan du inte vänta tills dess?

Vad använder du för timeouttid?

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

## #12 — Calippo, 2005-05-20T12:05Z

Lokalt på datorn är standard, 20 minuter tror jag.
På servern där den ska ligga sen är den 6 minuter.

Så du menar att korgen töms om man inte gör nåt på 6 minuter.
Om man stänger browsern då, hur ska man få den att tömma korgen?

Finns det nån nackdel att öka upp timouten till 20 minuter?
session.timout = 20 (det är minuter man räknar i eller?)

Hur "dödar" man eventuella sessions som man skapar på sidan om användaren bara stränger browsern?

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

## #13 — @nders, 2005-05-20T12:08Z

> Så du menar att korgen töms om man inte gör nåt på 6 minuter.

Ja, den *borde* det.

> Om man stänger browsern då, hur ska man få den att tömma korgen?

Det töms när timeouten inträffar och Session_OnEnd körs?

Ja, det är minuter man anger.

> Hur "dödar" man eventuella sessions som man skapar på sidan om användaren bara stränger browsern?

Det gör man inte. Inte på något bra sätt i alla fall...

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

## #14 — Calippo, 2005-05-20T12:14Z

Läste detta på webbhotellet vi ligger på:

\----------------------
Fråga
Vad är default session timeout?

Svar
Vi har en sessionstid på 5 minuter som default, önskar man spara sessionerna längre så skriver man timeout=5 efter sessionen är skapad, tiden är i minuter.

Tänk på att inte lagra sessionerna på servern för lång tid (max 20 minuter) och att stänga sessionen när den har använts.
Om för mycket sessioner lagras i minnet så kommer servern behöva tömma minnet, det blir då ett avbrott på webtrafiken. 
\----------------------

Där skriver dom att man ska stänga den när den inte används.
Kanske skulle skicka ett mail till dom och fråga hur.

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

## #15 — @nders, 2005-05-20T12:18Z

De menar att du ska antingen köra abandon när du inte behöver sessionvariablerna längre, eller .Contents.Remove på specifika sessionsvariabler du inte längre behöver.

Vad är det för webhotell?

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/128549-tömma-korgen-med-global-asa
