---
title: "Få med hela URL:en vid inloggning?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/64930-få-med-hela-url-en-vid-inloggning"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "G8"
published: "2003-01-15T07:35:59.000Z"
updated: "2003-01-18T15:20:58.000Z"
replies: 20
views: 438
page: 1
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/64930-få-med-hela-url-en-vid-inloggning"
---

# Få med hela URL:en vid inloggning?

_Sida 1 av 2._

## #1 — G8, 2003-01-15T07:35Z

Hej

Jag har gjort så att när man loggar in på min sida så ska man komma tillbaka till den sidan man loggade in ifrån, då inloggningsforumläret ligger på alla sidor (om mna inte redan är inloggad vill säga)

Kruxet är att om jag loggar in från en sida i forumet så får jag inte med hela URL:en. Jag får bara:

<http://www.minsida.se/delay.asp?DELAY_TIME=3&DELAY_MESSAGE=Logging+in%2E%3Cp%3EPlease+wait%2E%2E%2E&REDIRECT_URL=/forumthreads.asp?id=5>

När den igentligen skulle ha vart:
<http://www.minsida.se/delay.asp?DELAY_TIME=3&DELAY_MESSAGE=Logging+in%2E%3Cp%3EPlease+wait%2E%2E%2E&REDIRECT_URL=/forumthreads.asp?id=5&topic=HTML+%26+CSS>

Jag får alltså inte med det som ligger efter id=5... :(

Nån som har nått förlag på lösning?

Mvh

Permalänk: https://www.webforum.nu/p/64930

## #2 — @nders, 2003-01-15T07:43Z

Om du använder vanliga Request.Querystring("REDIRECT_URL") så blir det ju så, eftersom det som kommer efter & är en annan variabel.

Man får använda lite strängfunktioner för att klippa sönder den kompletta querystringen. Så här kan det se ut:

```
strQuerystring = Request.Querystring
strURL = right(strQuerystring, len(strQuerystring) - (instr(strQuerystring, "REDIRECT_URL") + 12))
```

Mvh,

Permalänk: https://www.webforum.nu/p/912822

## #3 — LR^evil.sid, 2003-01-15T07:50Z

Går det inte att sicka användaren vidare med

```
response.redirect request.servervariables("http_referer")
```

eller är det dumt att göra så?

Permalänk: https://www.webforum.nu/p/912827

## #4 — CatZ, 2003-01-15T08:57Z

Testa med 

```
Server.transfer (Request.ServerVariables("HTTP_REFERER"))
```

Permalänk: https://www.webforum.nu/p/912866

## #5 — G8, 2003-01-15T09:47Z

Oki, jag ska testa de olika förslagen och se vad som fungerar...

Är det någon lösning som är att föredra?

mvh

Permalänk: https://www.webforum.nu/p/912900

## #6 — G8, 2003-01-15T21:55Z

Med @nders kod får jag:

Körningsfel i Microsoft VBScript fel '800a0005' 

Ogiltigt proceduranrop eller argument.: 'right' 

Det är raden som innehåller 

```
strURL = right(strQuerystring, len(strQuerystring) - (instr(strQuerystring, "REDIRECT_URL") + 12))
```

 som den pekar på...

De andra alternativen får jag:
Körningsfel i Microsoft VBScript fel '800a01b6' 

Objektet stöder inte egenskapen eller metoden.: 'Server.transfer' 

skumt...

Permalänk: https://www.webforum.nu/p/916539

## #7 — G8, 2003-01-15T22:04Z

Jag har en funktion som ser ut så här:

```
Function GetCurrentURL()

	strQueryString = Request.QueryString
	strScriptName = Request.ServerVariables("SCRIPT_NAME")

	strURL = strScriptName
	If strQueryString <> "" Then
		strURL = strURL & "?" & strQueryString
	End If

	GetCurrentURL = strURL
End Function
URL = GetCurrentURL()
```

som jag sendan anropar när jag skickar iväg användaren med

```
<form action="logincheck.asp?url=<%=URL%>" onSubmit="return verify()" method="post" name="login" id="login">
```

och hämtar upp URL med request.querystring på logincheck.asp...

det kanske är ett onödigt omständigt sätt att göra det på?

Mvh

//G8

Permalänk: https://www.webforum.nu/p/916550

## #8 — solbulle, 2003-01-16T00:03Z

Då kan du väl lika gärna skriva om funktionen lite och sätta den på "mottagande" sida.

```
Function GetReferURL()
	strQueryString = Request.QueryString
	strURL = request.servervariables("http_referer")
	If strQueryString <> "" Then
		strURL = strURL & "?" & strQueryString
	End If
	GetReferURL = strURL
End Function
```

Borde väl fungera.
Samt då alltså skippa att skicka med adressen från sändande sida överhuvudtaget.

Permalänk: https://www.webforum.nu/p/916627

## #9 — G8, 2003-01-16T08:09Z

Det skulle jag ju kunna göra iofs, men får jag då med hela URL:en?

Ska testa när jag kommer hem ikväll...

mvh

//G8

Permalänk: https://www.webforum.nu/p/916691

## #10 — @nders, 2003-01-16T08:15Z

> **G8 skrev:**
>
> Med @nders kod får jag:
> 
> Körningsfel i Microsoft VBScript fel '800a0005' 
> 
> Ogiltigt proceduranrop eller argument.: 'right'

Hade du med den första raden också?

```
strQuerystring = Request.Querystring
```

Den måste du ha med, annars har ju inte strQuerystring något värde.

Min kod skall fungera, jag testade den nämligen innan jag postade den.

mvh,

Permalänk: https://www.webforum.nu/p/916694

## #11 — G8, 2003-01-16T08:25Z

Jupp, jag har med strQuerystring = Request.Querystring, men inbäddat i den funktionen jag postade lite längre upp, men det ska la inte spela nån roll om den ligger i en funktion eller inte, strQuerystring ska ju få samma värde iaf...

Hela funktionen med @nders kod inbakat:

```
Function GetCurrentURL()

	strQuerystring = Request.Querystring
	strURL = right(strQuerystring, len(strQuerystring) - (instr(strQuerystring, "REDIRECT_URL") + 12)) 
	If strQueryString <> "" Then
		strURL = strURL & "?" & strQueryString
	End If

	GetCurrentURL = strURL
End Function
URL = GetCurrentURL()
```

Hittar du nått uppenbart fel?

mvh

//G8

Permalänk: https://www.webforum.nu/p/916703

## #12 — @nders, 2003-01-16T08:33Z

Vad är det tänkt att funktionen ska returnera? Nu returnerar den en himla massa, dels det du klippte ut ur den kompletta querystringen, och också den kompletta querystringen slängd på. Ska den göra det?

Nej, det borde inte spela någon roll att koden ligger i en funktion. Finns det något i querystringen nu när du testar då?

mvh

Permalänk: https://www.webforum.nu/p/916707

## #13 — G8, 2003-01-16T09:49Z

Får testa när jag kommit hem ikväll, I'll keep you posted...

Thanx

//G8

Permalänk: https://www.webforum.nu/p/916745

## #14 — G8, 2003-01-16T19:32Z

@nders, I hate to say it, men jag får det inte att funka... :(

Samma felmess som innan:

```
Körningsfel i Microsoft VBScript fel '800a0005' 

Ogiltigt proceduranrop eller argument.: 'right'
```

Kan det ha nått att göra med olika versioner av ASP, 2.0 - 3.0?

> Vad är det tänkt att funktionen ska returnera?

Tanken är att den ska returnera URL:en på den sidan som man valde att logga in ifrån (ett loginformulär ligger på varje sida) och att man då ska skickas tillbaka till den sidan efter verifiering.

Så att om man t.ex. är inne i forumet på en tråd och väljer att logga in för att man vill besvara tråden, så ska man skickas tillbaka till samma tråd efter verifiering, så att man slipper bläddra igenom halva siten för att hitta tillbaka till samma ställe....

Blev det klarare nu?

mvh

Permalänk: https://www.webforum.nu/p/917227

## #15 — solbulle, 2003-01-16T22:51Z

Törs man fråga vad det var som knasade med "min" kod?

```
<%
Function GetReferURL()
	strQueryString = Request.QueryString
	strURL = request.servervariables("http_referer")
	If strQueryString <> "" Then
		strURL = strURL & "?" & strQueryString
	End If
	GetReferURL = strURL
End Function

response.redirect GetReferURL()
%>
```

(På mottagande sida.)

Permalänk: https://www.webforum.nu/p/917362

## #16 — G8, 2003-01-18T08:56Z

usch, nu börjar jag bli riktigt trött på det här... :(

Känns som om jag har testat allt nu, och ingenting fungerar... hjärnsläpp?

Solbulle: med din funktion får jag bara ett tomt värde... :(

Här kommer login.asp (loginformuläret)

```
<%
Dim ckiUserName, ckiUserPass, ckiRedir, blnCheck, objConn, ckiUserId, strSQL, blnUserCheck, objRs, strQueryString, strServerName, strScriptName, strURL

ckiUserId = Request.Cookies("userid")
ckiUserName = Request.Cookies("username")
ckiUserPass = Request.Cookies("password")
ckiRedir = Request.Cookies("redir")
Function GetCurrentURL()

	strQueryString = Request.QueryString
	strScriptName = Request.ServerVariables("SCRIPT_NAME")

	strURL = strScriptName
	If strQueryString <> "" Then
		strURL = strURL & "?" & strQueryString
	End If

	GetCurrentURL = strURL
End Function
URL = GetCurrentURL()
If Len(ckiUserId) <> 0 Then
set connection = Server.CreateObject("ADODB.Connection")
Connection.Open "databasen"
set rs = Server.CreateObject("adodb.Recordset")
stm ="SELECT autolog FROM Users WHERE (id =" & ckiUserId & ");"
set rs = Connection.Execute(STM)

rs.close
set rs = nothing
connection.close
set connection=nothing			
End If

If Len(ckiUserName) <> 0 Then	
	blnUserCheck = " checked"
End If
%>
	<table width="170" border="0" cellspacing="0" cellpadding="10">
              <tr> 
                <td> 
				  <form action="logincheck.asp?URL=<%=URL%>" onSubmit="return verify()" method="post" name="login" id="login">
        <table width="150" border="0" cellspacing="0" cellpadding="0" align="left">
                      <tr> 
						
            <td valign="top"> <img src="images/transp.gif" width="1" height="6"><br>
						  <b class=rubrik6>Log in!</b><br>
              			  <br>
                          Username: 
                          
              <input name="username" type="text" id="username2" style="width: 100%;" value="<%=ckiUserName%>" size="18" /> 
                          <br />
                          Password: 
                          
              <input name="password" type="password" id="password2" style="width: 100%;" value="<%=ckiUserPass%>" size="18" />
                          <br>
			  <input type="checkbox" name="rem" value="true" <%=blnUserCheck %> style="background-color: transparent;"> Remember me<br>
                          <br /> 
                          <input name="Submit" type="image" style="background-color: transparent; border: none;" src="images/login.gif" alt=" Log in " align="right" width="40" height="13" />
            </td>
                      </tr>
                    </table>
                  </form>
				</td>
              </tr>
            </table>
```

Och här är logincheck.asp (kontrollerar inloggningen)

```
<%
response.buffer=true
function fixa(fix)
fix = Replace(fix,"'","''")
fix = Replace(fix,"|","")

fixa = fix
end function
username = Request.Form("username")
password = Request.Form("password")
If Request.Form("rem") = "true" Then
	Response.Cookies("username") = username
	Response.Cookies("username").Expires = date() + 365
	Response.Cookies("password") = password
	Response.Cookies("password").Expires = date() + 365
End If
set connection = Server.CreateObject("ADODB.Connection")
Connection.Open "databasen"

stm = "SELECT username, password, nick, inactive, id, tidszon, klubbid FROM Users WHERE username = '"& fixa(username) &"' AND password= '"&fixa(password)&"' AND Inactive = 0"

set rs = connection.execute(stm)
If NOT(Rs.BOF AND Rs.EOF) Then
	
session("userid") = rs("id")
session("user") = rs("id") & status
session("username") = rs("username")
session("nick") = rs("nick")
session("password") = rs("password")
session("klubbid") = rs("klubbid")
session("timezone") = CINT(rs("tidszon"))
URL = request.querystring("URL")
	MYMESSAGE = Server.URLEncode("Logging in.<p>Please wait...") 
Response.Redirect ("delay.asp?DELAY_TIME=3&DELAY_MESSAGE=" & MYMESSAGE & "&REDIRECT_URL="&URL&"") 
Else
	MYMESSAGE = Server.URLEncode("An error has accured.<p>Please check your username and password!<p>Please wait...<p>")
Response.Redirect ("delay.asp?DELAY_TIME=3&DELAY_MESSAGE=" & MYMESSAGE & "&REDIRECT_URL=javascript:history.back(1)") 
End If

rs.close
set rs = nothing
connection.close
set connection = nothing
%>
```

Om nån skulle vilja vara så snäll och hjälpa mig fixa detta, jag blir galen!

mvh

//G8

Permalänk: https://www.webforum.nu/p/918411

## #17 — solbulle, 2003-01-18T09:42Z

Var kollar du om liraren är inloggad? En session? På alla dina sidor menar jag.

Permalänk: https://www.webforum.nu/p/918417

## #18 — G8, 2003-01-18T10:24Z

jupp, med en session...

//G8

Permalänk: https://www.webforum.nu/p/918435

## #19 — @nders, 2003-01-18T10:37Z

> **G8 skrev:**
>
> Kan det ha nått att göra med olika versioner av ASP, 2.0 - 3.0?

Nej, det är sannolikt du som gjort något fel. :)

> Tanken är att den ska returnera URL:en på den sidan som man valde att logga in ifrån (ett loginformulär ligger på varje sida) och att man då ska skickas tillbaka till den sidan efter verifiering.

Det borde ju vara absolut enklast att bara lägga url:en i ett hiddenfält i formuläret. Testa något liknande:

```
	<table width="170" border="0" cellspacing="0" cellpadding="10">
              <tr> 
                <td> 
				  <form action="logincheck.asp" onSubmit="return verify()" method="post" name="login" id="login">
        <table width="150" border="0" cellspacing="0" cellpadding="0" align="left">
                      <tr> 
						
            <td valign="top"> <img src="images/transp.gif" width="1" height="6"><br>
						  <b class=rubrik6>Log in!</b><br>
              			  <br>
                          Username: 
                          
              <input name="username" type="text" id="username2" style="width: 100%;" value="<%=ckiUserName%>" size="18" />
[b]<input type="hidden" name="URL" value="<%=URL%>">[/b]
                          <br />
                          Password: 
                          
              <input name="password" type="password" id="password2" style="width: 100%;" value="<%=ckiUserPass%>" size="18" />
                          <br>
			  <input type="checkbox" name="rem" value="true" <%=blnUserCheck %> style="background-color: transparent;"> Remember me<br>
                          <br /> 
                          <input name="Submit" type="image" style="background-color: transparent; border: none;" src="images/login.gif" alt=" Log in " align="right" width="40" height="13" />
            </td>
                      </tr>
                    </table>
                  </form>
				</td>
              </tr>
            </table>
```

Och sedan efter inloggningskontroll:

```
Response.Redirect Request.Form("url")
```

Mvh,

Permalänk: https://www.webforum.nu/p/918443

## #20 — Pace, 2003-01-18T10:38Z

Om du kör Server.UrlEncode() på URL:n så kommer den att fungera korrekt när du sedan hämtar den via QueryStrings.

Permalänk: https://www.webforum.nu/p/918446

---

Tråden på webben: https://www.webforum.nu/amne/asp/64930-få-med-hela-url-en-vid-inloggning  
Nästa sida: https://www.webforum.nu/amne/asp/64930-få-med-hela-url-en-vid-inloggning/page2.md
