ampyMedlem sedan feb. 20011 498 inlägg varför kan man inte skriva så här i global.asa?
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("community.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")
<SCRIPT LANGUAGE="VBScript" RUNAT=Server>
Sub Application_OnStart
End Sub
Sub Session_OnStart
End Sub
Sub Session_OnEnd
Addera1 = "Select * From members WHERE id = '"&session("id")&"'"
RecSet.Open Addera1, Connect, 3, 3
RecSet("status") = "offline"
RecSet("chatonline") = Session("username")
RecSet("chatdatum") = Now
RecSet("chatorder") = "offline"
RecSet.Update
RecSet.Close
End Sub
</SCRIPT>
För när jag startar om IIS så är det inte offline i kolumnen status m.m
Är det osäkert att göra så här eller kan man lösa det på andra sätt.
Det jag vill göra är att om en person bara stänger ner fönstret eller lämnar sidan så ska kolumnen status uppdateras med offline.
erkaMedlem sedan dec. 19996 522 inlägg Ibland fungerar inte global.asa och session on end, ingen vekrar veta varför. Jag har varit med om att testa olika installationer av IIS och helt plötsligt har det fungerar efter ominstallation. Kan vara värt ett försök, prova å skriva något annat global.asan och se om den fungerar över huvudtaget, du har den i rooten etc
ampyMedlem sedan feb. 20011 498 inlägg Den fungerar i vanliga fall och jag har självklart global.asa i rooten men finns det några andra sätt om det jag vill göra istället?
@ndersMedlem sedan juni 200032 969 inlägg Du får väl ha något i application_onstart som sätter alla användare till offline.
ampyMedlem sedan feb. 20011 498 inlägg Varför ska jag ha i application_onstart, det är bara när en person lämnar sidan som jag vill sätta den till offline, inte när personen kommer till sidan.
@ndersMedlem sedan juni 200032 969 inlägg Det var jag som läste För när jag startar om IIS så är det inte offline i kolumnen status m.m och missförstod frågan antar jag.
För att svara på din fråga nu när jag läst igen: Hur ska IIS:en veta om användaren stängt sitt fönster eller surfat vidare?
Enda sättet jag kan se är att ha en onunload-eventhandler på sidan som öppnar ett litet stackars fönster med en logga-ut sida i när man går därifrån.
Mvh,
ToonsterMedlem sedan feb. 20001 590 inlägg Du måste använda session_onstart OCH session_onend.
session_onend uppstår normalt efter 20 minuter dvs inte när besökaren stänger ner webbläsaren. Om du vill känna av detta omedelbart, så måste man be besökaren logga ut, eller kontrollera om besökaren är online.
/T
PatrikBMedlem sedan mars 20002 836 inlägg Den här biten kod:
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("community.mdb")
Set RecSet = Server.CreateObject("ADODB.Recordset")
måste finnas i samma sub som den ska köras i .... inte utanför.
cya,
PatrikB