webForumDet fria alternativet

Redirect till rätt sida efter inloggning

ASP

20 svar · 522 visningar · startad av saw

Medlem sedan mars 20011 880 inlägg
Frågan#1

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 vara på samma sida som jag var innan.
Förstår ni, eller klantar jag till i min beskrivning?

Så här ser status ut, den kod som håller reda på om jag är inloggad eller ej:

If Session("UserId") = "" Then

Response.Redirect("Inlogg.asp")
End If

Jag inbilar mig att jag skall labba med servervariabler eller??? :q

Medlem sedan dec. 19998 577 inlägg
#2

Helt rätt...

If Session("UserId") = "" Then

Response.Redirect "Inlogg.asp?referer=" & request.servervariables( "SCRIPT_NAME" )

End If

Och sedan när personen har loggat in så skickar du personen till request.querystring( "referer" ) (förutsatt du behållt den i inloggningen ;))

Mvh, Vide

Medlem sedan mars 20011 880 inlägg
#3

Hej Vidde och tack.
Skulle du vilja vara snäll och förklara det sista lite närmare?

Och sedan när personen har loggat in så skickar du personen till request.querystring( "referer" ) (förutsatt du behållt den i inloggningen

Medlem sedan dec. 19998 577 inlägg
#4

Glöm mitt första inlägg... ;)

Jag antar att du har ett forumär på "inlogg.asp", i den får du lägga in ett hidden-fält med värdet av request.servervariables( "http_referer" ):

<%
if len( trim( request.form( "password" ) ) ) > 0 then

'kolla om användaren får komma in.

if len( request.form( "referer") ) > 0 then
response.redirect request.form( "referer")
else
response.redirect "startsida.asp"
end if

end if
%>
<form>
Lösen: <input type="password" name="password">
<intput type="hidden" name="referer" value="<%=request.servervariables( "http_referer" )%>">
</form>
Medlem sedan mars 20011 880 inlägg
#5

Jag lyckas tydligen att fända till det galet....
På inloggsidan så ligger denna kod (den är i en lång Response.Write kod)

  "<td width=""22%"">&nbsp;</td>"&_
    "<td width=""78%"">"&_
    "<intput type=""hidden"" name=""referer"" value=""<"& 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>"&_

Jag får inget fel, men något tokigt är det, för min "button" syns inte långre.
Sen på validerings-sidan har jag gjort så här:

	if len( request.form( "referer") ) > 0 then
		response.redirect request.form( "referer")
		else
		response.redirect "../Admin/Admin.asp"
		end if

Och det är ju precis som koden jag fick.
Nu fungerar inte detta, kan det bero på något lustigt i den första biten med hidden fältet?

Medlem sedan mars 20011 880 inlägg
#6

Jag har hittat det första felet i hidden fältet (det fattades ett >) men tyvärr så fungerar det inte??

Vad kan felet annars vara? :q

Medlem sedan mars 20011 880 inlägg
#7

Jag försöker en sista gång.
Någonting är fel här, jag får inget värde med mig.
Vad är felet?

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

Tack på förhand

Medlem sedan juni 200032 967 inlägg
#8

Du har ett t för mycket.

"<[b]intput[/b] type=""hidden"" name=""referer"" value="& request.servervariables("http_referer") &">"&_
Medlem sedan mars 20011 880 inlägg
#9

Nej det fungerar fortfarande inte...

Tyvärr så ville det inte alls.
Det ser alltså ut så här:
På inloggnings-sidan

"<td width=""78%"">"&_

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

    "<input type=""submit"" CLASS=""buttons"" value=""Logga In"" name=""B1"">"&_

På valideringen:


		if len( request.form( "referer") ) > 0 then
				response.redirect request.form( "referer")
				else
				response.redirect "../Admin/Admin.asp"
		end if

För att kolla inloggningen så hänger denna kod med på alla filerna:

If Session("UserId") = "" Then

Response.Redirect("../../portal/inlogg.asp")
End If

VAR LIGGER FELET? :q

Medlem sedan mars 20015 287 inlägg
#10

Kan det inte vara så att du ditt value i htmlutskriften måste stå inom citationstecken, (value="bumpelibump" )?

Medlem sedan mars 20011 880 inlägg
#11

Tyvärr, jag försökte så här utan någon som helst skillnad:

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

Eftersom jag vet att det här sammlas kanske det duktigaste folket i landet, så är jag lite förvånad att det inte har gått att lösa... :o

Medlem sedan juni 200032 967 inlägg
#12

Om du bara skriver ut request.form("referer") på mottagarsidan, får du ut något då?

Medlem sedan mars 20011 880 inlägg
#13

Ifrån inloggningsidan så går den ju till valederingen och sedan till admin.
I vilket fall som helst så skulle den fått värdet ifrån inloggningsidan, men den är tom.
Jag anar ett fel här:

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

Jag kan bara ha en eller tre dubbelfnuttar runt request.servervariables...
Vad tror du?

Medlem sedan juni 200032 967 inlägg
#14

Du har alltså en valideringssida emellan?

Skickar du den vidare från valideringssidan till adminsidan då?

Tre citationstecken runt ser alldeles korrekt ut.

Medlem sedan mars 20011 880 inlägg
#15

Japp det gör jag. Vad jag funderar på är om det inte skulle vara några "taggar" dr "<" och ">".
Tanken med det hela är ju, om jag ifrån admin här gått till t ex sidan för hemsidor, men av någon anledning inte har kunnat slutföra vad jag gör, så tack vare session timeout, så när sidan uppdateras så skickas jag ju till inloggningsidan, som i herakin ligger ganska så långt ifrån. När man sedan har skrivit in användarnamn och lösen, så valideras detta och därifrån ville jag ble redirectad till den sida som request.servervariables("http_referer") innehåller. Är den tom, så skall man stanna på admin-sidan.

Som det nu är, så får jag inget värde alls i request.servervariables("http_referer") , utan man kommer hela tiden enbart till adminsidan.

Medlem sedan mars 20011 880 inlägg
#16

Nu hände någonting. Jag ändrade koden lite gran:

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

Och genast så började någonting hända, men....
Så här ser det ut i browserns adressfält:

http://127.0.0.1/Hemsidor/GlobalaForeningen/portal/<http://127.0.0.1/Hemsidor/GlobalaForeningen/Admin/Admin.asp>

Om jag uppdatera fältet på logginsidan så ser adressfältet ut så här:
http://127.0.0.1/Hemsidor/GlobalaForeningen/portal/<http://127.0.0.1/Hemsidor/GlobalaForeningen/Admin/Admin.asp>
Vad gör jag åt det?

Medlem sedan mars 20015 287 inlägg
#17

En ska du måste tänka på nu när du sitte och testar är att du kan inte bara testa att köra inloggningssidan direkt utan du måste ju ha blivit länkad till den för att du ska kunna få med dig ett värde i "http_referer".

Bara en tanke.

Annars tycker jag bestämt att formulärdelen är rätt samt

(Den första, inte den sista)

Red. som sagt den sista är fel som du själv kan se på länken, du får med dig <> i länken.

Medlem sedan mars 20011 880 inlägg
#18

Jo det är ju det som är problemet, jag vet inte var det kommer ifrån.
När jag testar, så står jag ju inte på inloggningssidan utan jag förflyttar mig till olika delar, men det hjälper inte, jag får ju dom här lustiga adresserna.
Och ändå så mycket lustigare, jag får ju dubbla adresser...

Medlem sedan juni 200032 967 inlägg
#19

Det skulle nog hjälpa om vi fick se all väsentlig kod från de sidor som används, inloggningssidan, valideringssidan och adminsidan.

Mvh,

Medlem sedan mars 20011 880 inlägg
#20

OK jg återkommer i kväll när jag kommer hem, befinner mig nu på jobbet och där har jag inte filerna. ;)

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