FIgg3Medlem sedan sep. 2001354 inlägg Hejsan jag sitter på en kod här men den vill inte fungera...
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Session_OnEnd()
Sessionen = Session.SessionID
file = Server.MapPath("shop.mdb")
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& file
Set RecSet = Server.CreateObject("ADODB.Recordset")
Tabort = "SELECT * FROM tmp WHERE sid = " & Sessionen
RecSet.Open Tabort, Connect, adOpenStatic, adLockOptimistic
Do Until RecSet.EOF
RecSet.Delete
Loop
RecSet.Update
RecSet.Close
Set RecSet = Nothing
Connect.close
End Sub
</SCRIPT>
Jag vill att databasen ska raderas om man går ut från sidan eller om det tar lång tid på sidan uttan att göra något tänkte att denna koden skulle fungera men icke... Kan det vara för att jag testar det på min HD med IIS? Eller är det något annat fel?
Mvh
OveRRidEMedlem sedan feb. 200112 078 inlägg Felmeddelande får du väl inget från global.asa antar jag, så hur gestaltar det sig? Raden tas inte bort, helt enkelt eller?
FIgg3Medlem sedan sep. 2001354 inlägg Helt rätt posterna raderas ej, inget fel mess för jag är juh inte kvar på sidan när koden körs...
solbulleMedlem sedan mars 20015 287 inlägg Inte för att jag har en hum om vare sig global.asa ller mycket annat, men vad är det som triggar att subben körs?
Å hur som helst, finns då sessionsvärdet kvar då
FIgg3Medlem sedan sep. 2001354 inlägg Det som triggar det hela är när Sessionen avslutas allså med koden
Sub Session_OnEnd()
Ingen annan som vet varför det inte funkar?
kanske är för att du har adOpenStatic, adLockOptimistic med, men ingen adovbs.inc fil eller liknande includerat.
detta kanske går:
<SCRIPT LANGUAGE=VBScript RUNAT=Server>
Sub Session_OnEnd()
Sessionen = Session.SessionID
file = Server.MapPath("shop.mdb")
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq="& file
Tabort = "Delete * FROM tmp WHERE sid = " & Sessionen
Connect.execute Tabort,,128
Connect.close
Set Connect = Nothing
End Sub
</SCRIPT>
FIgg3Medlem sedan sep. 2001354 inlägg Tack för svaret men jag testade det nu funkade inte tyvärr...
@ndersMedlem sedan juni 200032 969 inlägg Om du testar koden för sig själv, dvs utanför global.asa, fungerar den då?
Det är annars ett känt problem att session_onend inte körs som den skall på många IIS-installationer.
Mvh,
OveRRidEMedlem sedan feb. 200112 078 inlägg Men det är väl verkligen inte så att sessions-id:et rensas innan hela session_onEnd är klar? För isåfall är ju t.ex. session("userid") tom och då är det ju inte konstigt att det inte händer nåt i db:n.
@ndersMedlem sedan juni 200032 969 inlägg
Men det är väl verkligen inte så att sessions-id:et rensas innan hela session_onEnd är klar?
Nej. Session.sessionID finns kvar tills dess att Session_onEnd har körts klart.
Mvh,
ToonsterMedlem sedan feb. 20001 590 inlägg Frågan är hur du testar att det fungerar. Det räcker nog inte med att stänga av webbläsaren, utan man måste nog vänta sessionstiden ut, standard 20 minuter.
Jag tror koden funkar, det är nog bara så att den inte körs.
/T
FIgg3Medlem sedan sep. 2001354 inlägg Ojj många svar nu :-) man tackar...
@nders jag testade koden och den funkar utmärkt utan för global.asa men det skulle vara bra att kunna testa det med global .asa filen så att jag vet att det funkar när man laddar upp det på servern...
Måste man göra några inställningar för att det ska fungera? och gör det något att jag inte har alla filer i rooten? allså jag har databasen i en map så sökvägen till databasen i global.asa filen är så här shop/shop.mdb
Mvh