jag försöker att skapa en inloggning där man inte skall kunna accessa sidorna 1 och 2 utan att först ha loggat in... Det stämmer.session på samma dator
men om jag loggar in en gång men en instans av webläsaren så kan jag få tillgång till sidorna 1 och 2 om jag startar upp en till instatns av webbläsaren...
här är koden:
default
<%@ Language=VBScript %>
<%
if Session.Contents("loggedinok") <> true then
Session.Contents("loggedinok") = false
else
Response.Redirect "page2.asp"
end if
Response.Write "logged in: <STRONG>" & Session.Contents("loggedinok") & "</STRONG> <br>"
Response.Write "id: " & Session.SessionID & "<br>"
if Request.QueryString("loginerror") =1 then
Response.Write "wrong password!"
end if
%>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>
<form action=Page1.asp?login=1 method=post>
<P><INPUT id=password name=txtPassword style="LEFT: 12px; TOP: 17px"></P>
<P><INPUT id=submit1 type=submit value=Submit name=cmdSubmit></P>
</form>
</BODY>
</HTML>
page1
<%@ Language=VBScript %>
<%
if Request.QueryString("login") = 1 then
if Request.Form ("txtpassword") = "a" then
Session.Contents("loggedinok") = true
Response.Redirect "page2.asp"
else
Session.Contents("loggedinok") = false
Response.Redirect "default.asp?loginerror=1"
end if
else
Response.Redirect "error.htm"
end if
%>
page2
<%@ Language=VBScript %>
<%
if Session.Contents("loggedinok") = true then
Response.Write "welcome " & "<br>"
Response.Write "logged in: <STRONG>" & Session.Contents("loggedinok") & "</STRONG> <br>"
Response.Write "id: " & Session.SessionID & "<br>"
else
Response.Redirect "error.htm"
end if
%>Sv: session på samma dator
Du måste stänga alla webbläsare för att "släcka" session-variabel.
Öppnar du enbart en ny webbläsare så får du samma session till båda webbläsarna. Tror det knappast går att komma runt.
/Janne