Avatar billede inkognito1 Nybegynder
07. april 2002 - 15:34 Der er 15 kommentarer og
1 løsning

Tjekker om session er aktiv ...

Jeg har et chat system som på sin vis virker fint, men der åbbenbart nogen browserer der ikke vil logge ordenligt ud.

Findes der en måde hvor på jeg i evt. en VB fil men en timer kan tjekke om en aktuel session er aktiv ?

Hvis session hedder "Peter Hansen" kan jeg så på serveren tjekk om epert Hansen er aktiv ??
Avatar billede jes_petersen2 Nybegynder
07. april 2002 - 15:48 #1
Ikke direkte - men du kan tricke serveren lidt:

Hvis du i stedet hver f.eks. 3. minut lægger en sessions status ind i en application, og så tjekker status der... Så skulle det kunne lade sig gøre... Hpber, det giver mening - jeg har i hvert fald fået det til at virke...
Avatar billede inkognito1 Nybegynder
07. april 2002 - 15:54 #2
hvordan trækker man en session staus ud ?
Avatar billede jes_petersen2 Nybegynder
07. april 2002 - 16:01 #3
Tjekker, om den eksisterer:

<%
If Session("Whatever") <> "" Them
  Application("Foo") = Application("Foo") & "," & Session("Whatever")
End If
%>
Avatar billede inkognito1 Nybegynder
07. april 2002 - 16:30 #4
det jeg skal er på server siden at se informationen. Det må ikke være klienten der køre scriptet.

Når brugerne logger ind i chatten oprettes de i databasen.

Det jeg vil gøre er så at hente dem ud i et loop og se om de stadig ahr en session. Hvis de ikke ahr en session så slettes de i databasen.

Så det er nærmest en total oversigt over alle sessions på serveren. Hvor så man spørger om "Petr Hansen" isin total_sessions.
Avatar billede jes_petersen2 Nybegynder
07. april 2002 - 16:50 #5
Jeg forstår godt hvad du mener - det drejer sig sikkert om at lave en online-liste over brugerne, ikke? Derfor kan du så bruge din application som et array til at liste alle online-brugere, dvs. brugere, der har en session, som er blevet lagt ind i din application inden for de seneste 3 minutter...
Avatar billede inkognito1 Nybegynder
07. april 2002 - 17:46 #6
det er ikke så meget at lave en online liste ...

det er nærmere at slette dem der ikke er blevet logget ordenligt ud ..
Avatar billede jes_petersen2 Nybegynder
07. april 2002 - 17:56 #7
Så skal du bare lave en funktion, der også lægger tidspunkt ind i din application. Hvert 3. minut skal app'en så tjekkes for entries, der er mere end 3 minutter gamle, og fjerne dem...
Avatar billede inkognito1 Nybegynder
07. april 2002 - 17:58 #8
Hvordan tjekker jeg indholdet i Application("Foo") ??

Altså hvis jeg skal se om Peter Hansen er med i ?

if "Peter Hansen" isin Application("Foo") then
ok
end if

Sådan noget lign ?
Avatar billede jes_petersen2 Nybegynder
07. april 2002 - 18:14 #9
If InStr(Application("Foo"),"Peter Hansen") Then
  Gør noget
End If
Avatar billede inkognito1 Nybegynder
07. april 2002 - 19:01 #10
det du mener er at så snart flok skriver noget så skal deres navn tilføjes i Application("Foo") ??
Avatar billede jes_petersen2 Nybegynder
07. april 2002 - 19:36 #11
Det jeg mener er, at du skal hvert 3. minut skal opdatere et vindue/frame/dokument, og denne fil skal indeholde flg. kode:

<%
If Session("Whatever") <> "" Them
  Application("Foo") = Application("Foo") & "," & Session("Whatever")
End If
%>
Avatar billede inkognito1 Nybegynder
07. april 2002 - 21:14 #12
skal jeg sætte noget andet istedet for whatever ?

Jeg er ikke helt med ..
Avatar billede jes_petersen2 Nybegynder
07. april 2002 - 23:15 #13
Ok, jeg kommer lige med en komplet kode i morgen... Men så ville liidt mere end 15 points nok være passende...
Avatar billede inkognito1 Nybegynder
07. april 2002 - 23:21 #14
selfølgelig :)
Avatar billede inkognito1 Nybegynder
10. april 2002 - 03:06 #15
fandt du aldrig frem til en kode ?
Avatar billede inkognito1 Nybegynder
22. april 2002 - 23:18 #16
nå ikke
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