Hvad mener du med ens egen session? Hvis du gerne vide hvem som er online? For en session er ganske privat jo Du kan udskrive den ...men kun den bruger som har adgang til den ser den
Jamen altså. Det er en profil som andre brugere har adgang til også skal de kunne se om ejeren af profilen er online. Men i den kode jeg skrev oven over der skriver den bare ens egen session. Altså om en selv er online eller offline.
hvis du i din database har et felt som hedder "online" og du har en session med brugerens id Så når vedkommende logger ind sætter du online=ja og når han logger ud sætter du online=nej ?
scenariet er vel: 1) login side hvor der sættes en session og online sættes i databasen 2) sider hvor man skal se hvem som er online henter info fra database 3) logud side hvor database opdateres så man ikke er online og session slettes 4) siden hvor man skal se hvem som er online henter stadig info fra database og brugeren ses derfor ikke som online længere
<% If Request.QueryString("admin") = "tjek" then navn = trim(replace(Request.Form("brugernavn"), "'", "")) kode = trim(replace(Request.Form("kode"), "'", "")) Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath ("../db/System.mdb") sql = "SELECT * from admin WHERE brugernavn = '" & navn & "' AND kode = '" & kode & "'" Set rs = Conn.Execute(sql) if not rs.eof then
Set gw = Server.CreateObject("ADODB.RecordSet") MySQL = "Select * From admin WHERE ID = " & rs("ID") gw.Open MySQL, Conn, 1, 3 gw.Update gw("ip") = Request.ServerVariables("REMOTE_ADDR") gw.Update
Session("brugeradgang") = "1" Session("brugernavn") = rs("brugernavn") Session("id") = rs("id") Session("status") = rs("status") Session("IP") = Request.ServerVariables("REMOTE_ADDR") Session("moent_start") = Now() Session("Online") = "Porno" Session.Timeout = 3 Response.Redirect "../Plus/Menu.asp" else response.redirect "../Plus/Fejl.asp" end if end if Set conn = Nothing Set rs = Nothing %>
Det logind filen hvordan vil du smide det ind i den?
Jeg vil lave et felt i databasen som hedder "online" Så vil jeg når brugeren er godkendt med kode osv lave en "Update admin Set online = 'ja' Where id = "&session(id)
Tilsvarende når brugeren logger sig ud så sætte den til 'nej' På den side hvor du vil vise dem som er online der vælger du så "Select * From admin Where online = 'ja'" Eller hvis det er en enkelt person det skal vises på "Select online From admin Where id = " ...og så id´et på den pågældende
du kan jo bruge et array du kalder: Application("online_brugere"), så kan du tilgå det alle steder fra. Du skal så bare sørge for selv at logge en bruger af i global.asa når sessionen udløber(hvis han ikke selv har gjort det :-)
kan godt se jeg ikke er vandt til at udnytte Application og global.asa filen mere. Hvis man på den måde bare kan bevare et array..ja så er det måske smartere end databasen. Og ja det er jo også rigtig at brugere skal logges af hvis de lukker browseren
Pis. Nå men okay du får så point herfra nu også håber jeg på at idanielsen går over og svarer i et andet spørgsmål jeg laver som jeg kalder "Global.asa" ;)
hehe ok..sorry.. men vil jo helst ikke vildlede mere end højst nødvendig
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.