webForumDet fria alternativet

rätt mig om jag har fel..

ASP

22 svar · 443 visningar · startad av caze

Medlem sedan sep. 20016 059 inlägg
Frågan#1

Rätta mig om jag har fel...
Men visst ska denna kodsnutt finnas om man vill att man måste logga in först innan man tar sig till en sida...

<%
If cint(Session("inloggad")) <> 1 Then
Response.Redirect "default.asp"
End if
%>
tack på förhand..

Medlem sedan mars 2002777 inlägg
#2

Ja, om du skapar en session vid namn 'inloggad' som har värdet 1 vid lyckad inloggning.

Medlem sedan mars 20015 287 inlägg
#3

Om du inte har en session vid namn 'inloggad' så stannar du ju kvar på sidan du är på.
Rätta mig om jag har fel...

Medlem sedan sep. 20016 059 inlägg
#4

mmm. det har jag också gjort..

Men om jag loggar in och sen ut och sen skriver in adressen till den skyddade filen så kommer jag ändå dit... Men om jag däremot uppdaterar sidan så skickas jag till responsonse direct adressen.. vad beror detta på... alltså varför kan man gå in på sidan efter att ha loggat ut... ?

Medlem sedan mars 2002777 inlägg
#5

Ligger kodsnutten längst upp på sidan?

Får ut ut något värde av:

response.write " sessionvärdet: "& session("inloggad") &" "

efter att du loggat ut?

Medlem sedan sep. 20016 059 inlägg
#6

Får ut ut något värde av:

kod:--------------------------------------------------------------------------------
response.write " sessionvärdet: "& session("inloggad") &" "
--------------------------------------------------------------------------------

efter att du loggat ut?

Vad menar du?

Medlem sedan maj 2001156 inlägg
#7

Lägg till detta överst på sidan

<%
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
%>

Förhindrar att sidan finns kvar i cachen.

mvH

David

Medlem sedan sep. 20016 059 inlägg
#8

Jag tog denna kodsnutt längst upp... :

<%
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
%>

Och tog bort :

<%
If cint(Session("inloggad")) <> 1 Then
Response.Redirect "default.asp"
End if
%>

Då fungerade det inte... Så jag tog tillbaka den kodsnutten så att resultatet blev så här:

<%
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
%>
<%
If cint(Session("inloggad")) <> 1 Then
Response.Redirect "default.asp"
End if
%>

Har jag gjort något fel då? eller har jag gjort rätt?

Medlem sedan sep. 20016 059 inlägg
#9

ingen som vet???

Medlem sedan feb. 20012 412 inlägg
#10

Som någon sade innan: prova lägg detta på sidan man hamner på efter utloggning:

response.write " sessionvärdet: "& session("inloggad") &" "

det finns 2 alternativ:

  1. antigen försvinner inte värdet på din session vid utloggning, vilket innebär att man kommer in ändå.
  2. eller blir if-satsen aldrig true

mvh Jörgen HP

Medlem sedan juli 20003 825 inlägg
#11
  1. If-satsen blir aldrig true.

<%
If cint(Session("inloggad")) <> 1 Then
Response.Redirect "default.asp"
End if
%>

---
Byt till:
<%
If Session("inloggad") <> TRUE Then
Response.Redirect "default.asp"
End if
%>

---
Hur ser koden ut där du tilldelar sessionen ett värde?

IF request("user") = "arne" AND request("password") = "anka" THEN session("inloggad") = TRUE

Alternativt...

IF request("user") = "arne" AND request("password") = "anka" THEN session("inloggad") = 1

Alltså ...session("xx") = 1 och ...session("xx") = TRUE är samma sak.

session("xx") = "1" är det du menar ovan och det blir aldrig true. Ettan är i detta fallet en sträng.

Medlem sedan juli 20003 825 inlägg
#12

Äh... behåll din kod och sätt dubbelfjumpar framför och efter ettan så fungerar det,

CInt(Session("inloggad")) <> "1"

Medlem sedan feb. 20012 412 inlägg
#13

Nej,

är det heltal, dvs Cint så ska det inte vara duttar. Duttar gör att det anges som sträng. Med andra ord ska

CInt(Session("inloggad")) <> 1

fungera precis lika bra som

CInt(Session("inloggad")) <> "1"

Mvh Jörgen HP

Medlem sedan okt. 20005 273 inlägg
#14

CInt(Session("inloggad")) <> "1"

Bör inte det bli ett typblandningsfel

och en sak till du bör ju kunna göra

[red]If Cint(Session("inloggad")) <> 1 Then Response.Redirect "default.asp"
[/red]

...

Medlem sedan sep. 20016 059 inlägg
#15

och en sak till du bör ju kunna göra

kod:--------------------------------------------------------------------------------If Cint(Session("inloggad")) <> 1 Then Response.Redirect "default.asp"
--------------------------------------------------------------------------------

Så är det ju redan.. eller..? vad jag kan se så står det redan det...

Medlem sedan sep. 20016 059 inlägg
#16

Så här ser koden ut nu:

<%
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
%>
<%
If Session("inloggad") <> TRUE Then
Response.Redirect "default.asp"
End if
%>

Medlem sedan feb. 20012 412 inlägg
#17

Hej, jag skulle vilja se kodsnutten där du kontrollerar användarnamn och lösenord samt skapar din session "inloggad", för att kunna hitta en lösning på ditt beskymmer.

Medlem sedan sep. 20016 059 inlägg
#18

Okej... här kommer hela köret... :)

Kundloggain.asp:

<%
If (cstr(Request.Form("losenord")) = "exempel" AND cstr(Request.Form("Username")) = "exempel") Then

Session("inloggad") = 1
Response.Redirect "kundexempel.asp"

Elseif (cstr(Request.Form("losenord")) = "exempel2" AND cstr(Request.Form("Username")) = "exempel2") Then

Session("inloggad") = 1
Response.Redirect "kundexempel2.asp"

Else
Response.Redirect "fellosen.asp"
End If
%>

Högst upp av kundexempel.asp:

<%
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
%>
<%
If Session("inloggad") <> TRUE Then
Response.Redirect "default.asp"
End if
%>

Tack på förhand...

Medlem sedan mars 20015 287 inlägg
#19

Den kod du visar nu, fungerar den så att du loggar in o kan besöka kundexempel.asp?

Ditt problem från början var väl eg hur du skulle ta bort inloggningen/sessionen?

Medlem sedan sep. 20016 059 inlägg
#20

ligger något i det du säger.. ;)

Jag kom på att det är en fördel att kundexempel.asp ska öppnas om session är = TRUE :) eller hur...

304 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
139 ms — hämta tråd, inlägg och bilagor (db)
160 ms — ändringar (db)