webForumDet fria alternativet

Redirect till rätt sida efter inloggning

ASP

20 svar · 522 visningar · startad av saw · sida 2 av 2

Frågan, av saw

Jag har en inloggningsida som lite bygger på Microdatorns inloggning, men omarbetad efter tips ifrån er. Efter overksamhet i ett antal minuter (vet ej hur många) så kommer man ju tillbaka till inloggningsrutan. Men hur skall jag göra om jag t ex håller på att skriva in någonting, som ligger en bit ner i herakin, jag är tvungen att gå ifrån men när jag kommer tillbaka så efterinloggning så vill jag

Läs frågan i sin helhet →
Medlem sedan mars 20011 880 inlägg
#21

På @nders förfrågan, så skall jag nu posta det mest relevanta koderna.
Inlogg.asp

<%
Response.buffer = True
	Session("Forening")=""
	Session("Namn")=""
	Session("Login")=""
	Session("Password")=""
	Session("Epost") = ""
	Session.Abandon
	Response.Write "<CENTER><BR>"

If Request.Querystring("ERROR") <> "" Then
	 	 Response.Write "<TABLE BORDER=3 BGCOLOR=RED><TR><TD><FONT COLOR=White><H3>"
	 	 Response.Write Request.Querystring("Error")
	 	 Response.Write "</H3></FONT ></TD></TR></TABLE>"
End If

If Session("Logintries") >= 4 Then
    Response.Write "<font face=""Arial"">Tyvärr, du har försökt att logga in felaktigt mer än tre  gånger.<br> Du är nu avstängd från systemet.</p>"&_
    "För att prova igen måste du stänga din webbläsare och starta om den för att logga in.</font>"
Else

	Response.Write "</CENTER>"&_

    "<form method=""POST"" action=""validering.asp""><center>"&_
    "<table  border=""3"" rules=none width=""350"" class=vitText>"&_
	"<tr><td width=""22%"" CLASS=blaText>"&_
	"<strong><font size=""2"" face=""Arial"">Login:</font></strong></td>"&_
    "<td width=""78%"">"&_

    "<input type=""text"" name=""Login"" size=""20""></td>"&_
    "</tr><tr>"&_
    "<td width=""22%"" CLASS=blaText><strong><font size=""2"" face=""Arial"">Lösenord:</font></strong></td>"&_
    "<td width=""78%""><input type=""password"" name=""Password"" size=""20""></td>"&_
    "</tr><tr>"&_
    "<td width=""22%"">&nbsp;</td>"&_
    "<td width=""78%"">"&_

	"<input type=""hidden"" name=""referer"" value=""<"& TRIM(request.servervariables("http_referer")) &">"">"&_

    "<input type=""submit"" CLASS=""buttons"" value=""Logga In"" name=""B1"">"&_
	"</td></TR><TR ALIGN=LEFT><td width=""100%"" COLSPAN=""2"" CLASS=blaText><FONT SIZE=2><STRONG>"&_
	"Det här är den inloggning som krävs för att kunna administrera Globala Föreningen"&_
	"och de anslutna föreningarnas informations-sidor.</STRONG></FONT><P>"&_
	"</td></TR><TR ALIGN=CENTER><td width=""100%"" COLSPAN=""2"" CLASS=blaText><FONT SIZE=2><STRONG>"&_
	"<P><BR>Vid problem med inloggningen Maila då till:"&_
	"</STRONG></FONT>"&_
	 "</td></tr></table><BR> </form>"&_
     "<a href=""mailto:saw@songer.com?subject=Kan inte logga in på Globala Föreningens sida."" enctype=""text/plain"">Globala Föreningens:s Administration!!</a>"

End If

  	Response.Write "</tr></table></center>"&_

På valideringen:

Option Explicit

RESPONSE.BUFFER=TRUE

Dim Connection,SQLStmt,RS
%>
<!--#include file="../Style/functions.inc"-->
<!--#include file="dataconn.inc"-->

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

<%

If LEN(FixaTecken(Request.Form("Login")))=0 OR LEN(FixaTecken(Request.Form("Password")))=0 Then
	Response.Redirect "Inlogg.asp?ERROR=" & Server.URLEncode("Utan Inloggnings-namn och Lösenord kan du ju inte logga in här!!!<BR><H5><CENTER>Kontakta Administrationen på Globala Föreningen om du anser att du är behörig.</CENTER></H5>")
End If

		SQLStmt = "SELECT * FROM t_Anvandare Where Login = '" & FixaTecken(Request.Form("Login")) & "' AND Password = '" & FixaTecken(Request.Form("Password")) & "'"
		Set RS = Connection.Execute(SQLStmt)

If RS.EOF Then
		Response.Redirect "Inlogg.asp?ERROR=" & Server.URLEncode("Du måste fylla i rätt Inloggnings-namn och Lösenord!!!<BR><H5><CENTER>Vid fortsatta fel kontakta Administrationen på Globala Föreningen.</CENTER></H5>")
Else
       	Session("UserId") = RS("AnvId")
       	Session("sessionId")= Session.sessionId
		Session("Namn") = RS("Namn")
		Session("Forening") = RS("Forening")

	If RS("Admin")="True" Then
		Session("valid")=1
	ElseIf Session("Namn")="Curt Thapper" ANd Session("Forening")="Globala Föreningen" Then
		Session("valid")=2
	Else
	Session("valid")=3
	End If

		if len( request.form( "referer") ) > 0 then
			response.redirect TRIM(request.form("referer"))
			'response.redirect "../Admin/Admin.asp"
		else
			response.redirect "../Admin/Admin.asp"
		end if
End If
response.write TRIM(request.form("referer"))
RS.Close
Set Rs=Nothing
Connection.Close
Set Connection = Nothing

På varje fil som skall skyddas:

If Session("UserId") = "" Then
Response.Redirect("../../portal/inlogg.asp")
End If

Jag lägger inte in filen admin, för den har nog ingenting att göra med att det fungera knasigt.
Därimot om jag står i admin.asp och backar tillbaka till inlogg.asp, så borde ju referer peka på admin.asp, men det gör den inte utan:
http://127.0.0.1/Hemsidor/GlobalaForeningen/portal/<>

Är det här helt hopplöst eller...
:l

262 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)