Avatar billede mini97ad Nybegynder
22. september 2002 - 22:59 Der er 19 kommentarer og
2 løsninger

Login giver problemer

Hej, jeg har hentet en "logon" script som giver nogle problemer.

Den side hvor der er beskyttelse skriver jeg i toppen:

<%
if session("login") = "" Then
Response.redirect("redigerlogin.asp?id=" & Request.Querystring("id") & " ")
end if
%>

Den virker fint nok bortset fra......

Hvis man logger ind til den siden fra en anden side, så er sessionen stadigvæk god nok og den beder ikke om password igen. Det der altså går galt er at når man har indtastet sit password, så kan man logge på som alle andre så længe sessionen (browseren ikke har været lukket) er igang. Hvordan løser man dette smartest?
Avatar billede mini97ad Nybegynder
22. september 2002 - 23:00 #1
giver det mening det jeg skrev?
Avatar billede Slettet bruger
22. september 2002 - 23:01 #2
kan du ikke i bunde af din side sætte session("login")= ""

mvh.
Questis.dk
Avatar billede medions Nybegynder
22. september 2002 - 23:01 #3
Ja, lav en logaf knap/link og skriv:

<%
  Session.Abandon
%>

//>Rune
Avatar billede medions Nybegynder
22. september 2002 - 23:03 #4
Fx. hvis du dine oprindelige sider, så lav et link der hedder LogAf. Det link skal så referere hen til en side der fx. kunne hede logaf.asp, i den skal der så stå:

<%
  Session("login").Abandon
%>

//>Rune
Avatar billede mini97ad Nybegynder
22. september 2002 - 23:05 #5
Hej Questis,

jeg forstod ikke helt hvad du mente. Skal jeg sætte session("login") til at være noget i bunden af den side, hvor man kommer ind på. Altså således så når siden forlades, så er sessionen en anden værdi end godkendt?
Avatar billede mini97ad Nybegynder
22. september 2002 - 23:06 #6
Hej Medion,

det du skriver - det forstår jeg som om at man laver et link hvor brugeren kan logge af?? men hvis brugeren ikke klikker på det link, så kan stadigvæl væk vælge at misbruge session til at "logge" på som andre?
Avatar billede Slettet bruger
22. september 2002 - 23:07 #7
Et eller andet siger mig at du skal have rette i din kode, hvis man kan logge på som andre brugere, via sit eget login. eller er jeg helt galt på den ?
Avatar billede medions Nybegynder
22. september 2002 - 23:08 #8
Jamen så er det jo oxo op til brugeren selv :-)

Iøvrigt så var en Session uberørt kun i 20 min. så helt galt kunne det jo ikke gå! ;o)

//>Rune
Avatar billede Slettet bruger
22. september 2002 - 23:08 #9
ja det var det jeg prøvede at sige så man skal logge ind til hver side, tror ikke lige jeg forstå hvad det er for et system du laver for det lyder ikke smart &:-(
Avatar billede mini97ad Nybegynder
22. september 2002 - 23:13 #10
systemet er således at "logon" siden indeholder bland andet:

Sql = "Select Count(*) as Found from annoncer where (password ='" & strPassword  & "') and ID = " & Request.Querystring("id") & " "
  Set LO = RS.Execute(Sql)
  if LO("Found") = 0 then
    Session("login") = ""
    error = "Koden er indtastet forkert - prøv igen"
  else
  strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath(".mdb")
  Set myConn = Server.CreateObject("ADODB.Connection")
  myConn.Open strDSN
  strSQL = "SELECT * FROM annoncer where (password ='" & Request("password") & "') and ID = " & Request.Querystring("id") & " "
  Set ez = myConn.Execute(strSQL)
    Session("login") = "yes mate"
    Response.redirect("rediger.asp?id=" & Request.Querystring("id") & " ")
    EZ.Close
    RS.Close
    Conn.Close


Og på den side hvor beskyttelsen er stå der:

<%
if session("login") = "" Then
Response.redirect("redigerlogin.asp?id=" & Request.Querystring("id") & " ")
end if
%>


Kan man ikke på en eller anden måde ændre sessions værdien på den siden man kommer ind på, så den automatisk logger bruger af med det samme?
Avatar billede medions Nybegynder
22. september 2002 - 23:15 #11
Jov, brug Abandon eller omdøb din Session!

<%
  Session("login").Abandon
%>

eller

<%
  Session("login") = "loggetaf"
%>

//>Rune
Avatar billede Slettet bruger
22. september 2002 - 23:15 #12
ja det gør du ved i slutningen af siden at skrive

set session("login")= "" og så er den jo tom
Avatar billede Slettet bruger
22. september 2002 - 23:15 #13
*GG*
Avatar billede mini97ad Nybegynder
22. september 2002 - 23:20 #14
tak skal i have i fortjener begge point
Avatar billede mini97ad Nybegynder
22. september 2002 - 23:21 #15
hmm, bortset fra at den ikke vil vise siden, hvis jeg skriver
<%  Session("login") = "loggetaf" %> eller
<% set session("login")= "loggetaf" %>
Avatar billede medions Nybegynder
22. september 2002 - 23:21 #16
Fair nok ;o)
Thx 4 Poinz

//>Rune
Avatar billede Slettet bruger
22. september 2002 - 23:24 #17
hvad skriver den så ?
Avatar billede medions Nybegynder
22. september 2002 - 23:26 #18
Det er fordi du ikke kan "Sætte" en variabel...

Prøv at fjern Set ;o)

//>Rune
Avatar billede mini97ad Nybegynder
22. september 2002 - 23:27 #19
Hvis jeg skriver :

<%
  Session("login").Abandon
%>

I bunden af siden, så vil overhovedet ikke displaye siden

Skriver jeg
<% set session("login")= "" %>

så går den korrekt ind første gang. Prøver jeg at gå ind igen bagefter så skriver den:

Microsoft VBScript runtime error '800a01a8'

Object required: 'session'
Avatar billede mini97ad Nybegynder
22. september 2002 - 23:29 #20
yes, så virker det - tak skal i have endnu engang
Avatar billede medions Nybegynder
22. september 2002 - 23:31 #21
*G* fair nok... ;o)
Anytime!

//>Rune
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