04. april 2001 - 11:11Der er
18 kommentarer og 1 løsning
list of online users
Hey There
I am trying to get my server your show a list of all my online users that have logged onto my site I have a username and password login that creates a session called \"name\" I am trying to have a list on my page of all the current session names I found this artical http://www.activeserverpages.dk/julekalender/julegaver/whoson.asp but cant seem to get the damn thing to work (Probably my bad danish :) I found a few other questions here on eksperten but coundn\'t seem to find the right answer :( Any Ideas Guzzie
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
the page I an testing on looks like this <!--#include file=is_this_person_logged_in_checker.inc-->
<% \' --- procedure til at tilføje en online bruger --- Sub AddOnlineUser() Application.Lock Application(\"OnlineUsers\") = Application(\"Onlineusers\") & Session(\"name\") & \",\" Application.UnLock End Sub
\' --- funktion som retunerer antallet af online brugere --- Function CountOnLineUsers() Dim arrUsers \' --- lav et array med online brugere --- arrUsers = Split(Application(\"Onlineusers\"), \",\") \' --- antallet af online brugere er altid størrelsen på arrayet -1 --- CountOnLineUsers = UBound(arrUsers) - 1 End Function
\' --- procedure til at udskrive online brugere --- Sub WriteOnLineUsers() Dim arrUsers Dim n \' --- lav et array med online brugere --- arrUsers = Split(Application(\"Onlineusers\"), \",\") \' --- udskriv liste --- For n = 1 To UBound(arrUsers) -1 Response.Write(arrUser(n) & \"<br>\") Next End Sub %>
<html> <head> <title><%=session(\"name\")%></title> </head> <link rel=\"stylesheet\" type=\"text/css\" href=\"styles_old.css\"> <body background=\"../grafik/bg.jpg\"> <table> <tr><td>Welcome <%=session(\"name\")%> the following people are online</td></tr>
Sub AddOnlineUser() Application.Lock Application(\"OnlineUsers\") = Application(\"Onlineusers\") & Session(\"name\") & \",\" Application.UnLock End Sub
Ok... On admin_login, where the user logs in and Session(\"login\") i set, you have to call the sub:
Sub AddOnlineUser() Application.Lock Application(\"OnlineUsers\") = Application(\"Onlineusers\") & Session(\"name\") & \",\" Application.UnLock End Sub
Remember that you have to have the Session(\"name\") variable set for it to work.
The page where I login and the session name gets created looks like this <% set Con = server.CreateObject(\"ADODB.connection\") Con.open \"Driver={Microsoft Access Driver (*.mdb)};dbq=\" & Server.MapPath(\"admin_writers.mdb\")
name = request.form(\"login\") password = request.form(\"password\")
rsSQL = \"SELECT * FROM writers WHERE name = \'\" & name & \"\' AND password = \'\" & password & \"\'\" set rs = Con.execute(rsSQL)
if rs.eof then session(\"login\") = \"\" response.redirect (\"admin_login.asp?error=error\") else session(\"login\") = true session(\"name\") = name session(\"email\") = RS(\"email\") session(\"admin_level\") = RS(\"admin_level\") response.redirect (\"default.asp\") end if %>
<% set Con = server.CreateObject(\"ADODB.connection\") Con.open \"Driver={Microsoft Access Driver (*.mdb)};dbq=\" & Server.MapPath(\"admin_writers.mdb\")
Sub AddOnlineUser() Application.Lock Application(\"OnlineUsers\") = Application(\"Onlineusers\") & Session(\"name\") & \",\" Application.UnLock End Sub
name = request.form(\"login\") password = request.form(\"password\")
rsSQL = \"SELECT * FROM writers WHERE name = \'\" & name & \"\' AND password = \'\" & password & \"\'\" set rs = Con.execute(rsSQL)
if rs.eof then session(\"login\") = \"\" response.redirect (\"admin_login.asp?error=error\") else session(\"login\") = true session(\"name\") = name session(\"email\") = RS(\"email\") session(\"admin_level\") = RS(\"admin_level\") response.redirect (\"default.asp\") Call AddOnlineUser() end if %>
Hmmm its still not working I have a couple of asp pages the global.asa login page - this only contains a form login_check - thats the one that creates the session then the test page - the test page code looks like this <!--#include file=is_this_person_logged_in_checker.inc-->
<% \' --- procedure til at tilføje en online bruger --- Sub AddOnlineUser() Application.Lock Application(\"OnlineUsers\") = Application(\"Onlineusers\") & Session(\"name\") & \",\" Application.UnLock End Sub
\' --- funktion som retunerer antallet af online brugere --- Function CountOnLineUsers() Dim arrUsers \' --- lav et array med online brugere --- arrUsers = Split(Application(\"Onlineusers\"), \",\") \' --- antallet af online brugere er altid størrelsen på arrayet -1 --- CountOnLineUsers = UBound(arrUsers) - 1 End Function
\' --- procedure til at udskrive online brugere --- Sub WriteOnLineUsers() Dim arrUsers Dim n \' --- lav et array med online brugere --- arrUsers = Split(Application(\"Onlineusers\"), \",\") \' --- udskriv liste --- For n = 1 To UBound(arrUsers) -1 Response.Write(arrUser(n) & \"<br>\") Next End Sub %>
<html> <head> <title><%=session(\"name\")%></title> </head> <link rel=\"stylesheet\" type=\"text/css\" href=\"styles_old.css\"> <body background=\"../grafik/bg.jpg\"> <table> <tr><td>Welcome <%=session(\"name\")%> the following people are online</td></tr>
<% set Con = server.CreateObject(\"ADODB.connection\") Con.open \"Driver={Microsoft Access Driver (*.mdb)};dbq=\" & Server.MapPath(\"admin_writers.mdb\")
Sub AddOnlineUser() Application.Lock Application(\"OnlineUsers\") = Application(\"Onlineusers\") & Session(\"name\") & \",\" Application.UnLock End Sub
name = request.form(\"login\") password = request.form(\"password\")
rsSQL = \"SELECT * FROM writers WHERE name = \'\" & name & \"\' AND password = \'\" & password & \"\'\" set rs = Con.execute(rsSQL)
if rs.eof then session(\"login\") = \"\" response.redirect (\"admin_login.asp?error=error\") else session(\"login\") = true session(\"name\") = name session(\"email\") = RS(\"email\") session(\"admin_level\") = RS(\"admin_level\") response.redirect (\"default.asp\") Call AddOnlineUser() end if %>
I added the AddOnlineUser Sub. That\'s it. Then after you login you should be able to see your username on the page that shows onlineusers.
Well anyway Thanks for trying dudal I will close the question now and try another day thanks again
Synes godt om
Ny brugerNybegynder
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.