Toon posts:

[ASP] Global.asa Session_OnEnd stuk?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo,

Ik heb een probleempje met global.asa. Ik heb ben bezig met een projectje om een gegevens van een winkelwagentje in een textbestand op te slaan. Als een gebruiker internet explorer afsluit terwijl hij aan het winkelen was, moet het textbestandje verwijdert worden. Elke sessie krijgt zijn eigen textbestand. Het probleem is dat het bestand niet wordt verwijdert. Hier de code van global.asa

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

Sub Application_OnStart
End Sub

Sub Session_OnStart
End Sub

Sub Session_OnEnd

mijnBestand = "winkelwagen" & mySessionId & ".txt"
Set fs = Server.CreateObject ("Scripting.FileSystemObject")
fs.DeleteFile mijnBestand

End Sub

</script>

Nu heb ik op internet een voorbeeltje gevonden van een global.asa waarbij je de online users kunt tellen. Dat had ik even geprobeerd maar wat hij doet is een soort bezoekersteller maken i.p.v. een online user teller. Dit is die code:

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

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

Sub Session_OnStart
Application.Lock
Application("visitors")=Application("visitors")+1
Application.UnLock
End Sub

Sub Session_OnEnd
Application.Lock
Application("visitors")=Application("visitors")-1
Application.UnLock
End Sub

</script>

Wat hij eigenlijk niet doet is de methode session_onend.. En dat doet hij volgens mij ook niet bij het eerste voorbeeldcode.

Iemand suggesties?

[ Voor 9% gewijzigd door Verwijderd op 22-01-2003 19:43 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:24

gorgi_19

Kruimeltjes zijn weer op :9

Je kan niet testen of iets werkt of niet..
Is je code wel correct? Wat doet deze als je die in een normale pagina zet, werkt deze dan wel?

Verder nog een verzoekje: kan je je code tussen [code=asp][/code] zetten?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • robjanssen
  • Registratie: September 2001
  • Laatst online: 02-08 16:10

robjanssen

Software Developer

Het is algemeen bekend dat de Session_OnEnd vaak niet werkt.
Het wordt dus ook altijd aangeraden om deze niet te gebruiken.

Verwijderd

Topicstarter
Ok.. sorry. Doe ik de volgende keer. Nou die laatste code met die teller werkt dus wel. .maar niet goed.. hij slaat de methode session_onend over. De eerste code verwijdert hij het textbestandje niet.. wat hij wel moet doen

Verwijderd

Topicstarter
Ow.. Hoe kan ik het wel voor elkaar krijgen dat het textbestandje weg wordt gegooit als de gebruiker plotseling de browser afsluit.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:24

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 22 January 2003 @ 19:49:
Ow.. Hoe kan ik het wel voor elkaar krijgen dat het textbestandje weg wordt gegooit als de gebruiker plotseling de browser afsluit.
Een session eindigt niet als een gebruiker een browser sluit.... En zou je voortaan je post kunnen editen als je nog wat wilt toevoegen? Dit kan met Afbeeldingslocatie: http://images.tweakers.net/forum/templates/got/images/icons/edit.gif knopje? :)

[ Voor 23% gewijzigd door gorgi_19 op 22-01-2003 19:51 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • robjanssen
  • Registratie: September 2001
  • Laatst online: 02-08 16:10

robjanssen

Software Developer

Niet.

Of door een proces te bouwen wat bijvoorbeeld elke nacht draait en dat er voor zorgt dat tekstbestandjes die ouder zijn dan 1 dag verwijderd worden.

Verwijderd

Topicstarter
ow.. doh! dan heb ik dat verkeert begrepen.. Maar is het wel mogelijk dan dat als een gebruiker de browser afsluit het textbestandje wordt gewist?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:24

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 22 januari 2003 @ 19:52:
ow.. doh! dan heb ik dat verkeert begrepen.. Maar is het wel mogelijk dan dat als een gebruiker de browser afsluit het textbestandje wordt gewist?
Zie robjansen.. Of je kan clientside eea gaan proberen te faken door middel van een OnBeforeUnload event en dan een pagina laden die je bestandje wist.. Of je gebruikers alleen hier zo blij mee zijn en of dit betrouwbaar is.. Durf het te betwijfelen..

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • robjanssen
  • Registratie: September 2001
  • Laatst online: 02-08 16:10

robjanssen

Software Developer

Dat kun je dus bijna nooit afvangen omdat de Session_OnEnd dan niet wordt aangeroepen.

Maar waarom sla je de gegevens niet gewoon in een Session variabele?
Of in een Array.
Of in een tempory tabel?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:24

gorgi_19

Kruimeltjes zijn weer op :9

robjanssen schreef op 22 januari 2003 @ 19:55:
Dat kun je dus bijna nooit afvangen omdat de Session_OnEnd dan niet wordt aangeroepen.

Maar waarom sla je de gegevens niet gewoon in een Session variabele?
Of in een Array.
Of in een tempory tabel?
1 extra optie toevoegen nog: een clientside cookie, met een vervaltijd van 1 dag.. :P

Ik weet niet of je een server moet belasten met al die extra session variabelen. Verder lijkt me de vertrouwelijkheid van een aantal artikelen ook niet bijster groot.

Digitaal onderwijsmateriaal, leermateriaal voor hbo

Pagina: 1