Avatar billede casualty Nybegynder
23. februar 2003 - 22:53 Der er 3 kommentarer og
2 løsninger

Er brugeren online eller?

Når en bruger på min side logger ind så opdateres feltet "online" til "true" ud for den enkelte bruger i min bruger tabel, samtidig oprettes en session variabel "session.contents("username")=brugernavn"

fint nok... Når brugeren logger ud igen eller lukker siden
så skal online sættes til "false"..Jeg har fået at vide at det kan gøres på følgende måde via global.asa :

.................................................

<SCRIPT RUNAT=Server Language=VBScript>
SUB Session_OnEnd

sql = "UPDATE users SET online=false WHERE username = " & Session("username") & "

conn.execute(sql)
END SUB
</SCRIPT>

.........................................

Jeg har svært ved at se logikken i at min global.asa lige ved hvad for en brugerSession der er den aktuelle...

Kan ovenstående lade sig gøre???

Mvh Casualty
Avatar billede hossein Nybegynder
23. februar 2003 - 23:35 #1
Du kan kigge på dette link:
http://www.2enetworx.com/dev/samples/memwhoson.asp

Jeg tror ikke man kan sætte update i global.asa:
The Session_OnEnd event occurs when a session is abandoned or times out. Of the server built-in objects, only the Application, Server, and Session objects are available.
Avatar billede hossein Nybegynder
23. februar 2003 - 23:40 #2
Ok, det kan man godt. Jeg prøvede på den måde:

Sub Session_OnEnd
    set conn = Server.CreateObject ("ADODB.Connection")
    conn.Open Application("connString")

    query = "UPDATE User_LogTime SET Logout_Time=#" & now() & "#, offline=True "
    query = query & "WHERE offline=False AND SID=" & Session.SessionID &_
                " AND user_id=" & Session("member")
   
    conn.Execute (query)
    conn.Close
    set conn = Nothing   
End Sub
Avatar billede hossein Nybegynder
24. februar 2003 - 00:22 #3
hjalp det?
Avatar billede midas_dk Nybegynder
24. februar 2003 - 02:13 #4
hossein >> Han efterspørger vist mere en forklaring bag session-begreberne end en egentlig løsning, for den har han jo sådan set allerede...

Casualty >> En session er faktisk en cookie, som lægger sig på brugerens maskine. Når du sætter Session("username") = "Jens Romundstad", gemmes det altså på brugerens computer. Når du "opretter" en session, køres Session_OnStart (hvis den findes), som groft sagt opretter cookien og gi'r den et "unikt" ID. Når så Session_OnEnd kaldes, kan den finde cookien og derved de data, du har smidt deri.

Gav det mening?
Avatar billede casualty Nybegynder
24. februar 2003 - 14:56 #5
Ja 1000 tak begge to det var lige hvad jeg havde brug for..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester