---
title: "Länka rätt baserat på url:en"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/92718-länka-rätt-baserat-på-url-en"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "monAmour"
published: "2003-12-15T16:03:27.000Z"
updated: "2003-12-17T11:09:21.000Z"
replies: 11
views: 1002
page: 1
pages: 1
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/92718-länka-rätt-baserat-på-url-en"
---

# Länka rätt baserat på url:en

## #1 — monAmour, 2003-12-15T16:03Z

Hej, har fått i uppdrag att skriva om ett skript så att inlänkning till olika sidor fungerar.
Ska fungera så att om man slår in <https://www.arnander.se> så ska filen index.se.asp inkluderas.
Slår man in <https://www.arnander.com> ska filen index.com.asp inkluderas och om man slår in <https://www.adcando.com> så ska index.adcando.asp inkluderas.

Det tidigare skriptet höll reda på se respektive com. Jag har fått i uppdrag att fixa så att det funkar med adcando också.
Är mer bevandrad i php så jag undrar om följande är rätt innan jag går skarpt med det.

```
<%
Mapp = "COM"
If Instr(Request.ServerVariables("HTTP_HOST"),"www.arnander.se")>0 Then  Mapp = "SE"

Select case Mapp 

Case "COM" %>
<!-- #include file="index.com.asp" -->
<% Case "SE" %>
<!-- #include file="index.se.asp" -->
<% End Select

ElseIf Instr(Request.ServerVariables("HTTP_HOST"),"www.adcando.com")>0 %>
<!-- #include file="index.adcando.asp" -->

<%
End if %>
```

Tack på förhand!

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

## #2 — Jesper T, 2003-12-15T16:20Z

Det känns lite tårta på tårta med först en if-sats sedan en select case.
Kan du köra med server execute så skulle jag ha gjort så här:

```
<%
If Instr(Request.ServerVariables("HTTP_HOST"),"www.arnander.se")>0 Then
      Server.Execute("index_se.asp") 
ElseIf Instr(Request.ServerVariables("HTTP_HOST"),"www.arnander.com")>0 Then
      Server.Execute("index_com.asp") 
ElseIf Instr(Request.ServerVariables("HTTP_HOST"),"www.adcando.com")>0 Then
      Server.Execute("index_adcando.asp")
end if
%>
```

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

## #3 — monAmour, 2003-12-15T16:28Z

Jo det tror jag att jag ska kunna göra! Är ju en ren iis server skulle jag tro.
Så detta fungerar alltså på samma sätt som med "include" kommandot?

Tack för hjälpen annars...

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

## #4 — Jesper T, 2003-12-15T16:52Z

> **monAmour skrev:**
>
> Så detta fungerar alltså på samma sätt som med "include" kommandot?

Hur det igentligen fungerar har jag ingen aning om.
Men resultatet/effekten är ju likvärdigt.
Tror att Server execute tom. är lite effektivare eftersom att en includefil kommer att laddas även fast den inte visas.

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

## #5 — monAmour, 2003-12-15T16:54Z

Guld! Tackar

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

## #6 — LR^evil.sid, 2003-12-15T17:56Z

Som jag förstått det så inkluderas koden med #include.

När du använder server.execute så exekveras koden som en egen sida. Vilket i sin tur betyder att du egentligen skall dimma dina variabler och skapa dina objekt på den sidan när du använder den varianten. Det behöver du ju inte när du bara inkluderar den.

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

## #7 — monAmour, 2003-12-16T07:48Z

Aha okey, men jag har inte så mycket variabler som följer med in i sidorna som inkluderas.
Men om jag vill köra include så antar jag att jag bara kan byta execute raderna mot include-rader!?

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

## #8 — LR^evil.sid, 2003-12-16T20:17Z

jo, men tänk på att include inkluderar filen oavsett om det är den casesatsen som skall användas eller inte, detta görs inte vid en execute

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

## #9 — wborg, 2003-12-16T23:50Z

Hur funkar det om man vill att den hoppar till en annan katalog?

t.ex:

```
<%
If Instr(Request.ServerVariables("HTTP_HOST"),"www.arnander.se")>0 Then
      Server.Execute("se/index.asp") 
ElseIf Instr(Request.ServerVariables("HTTP_HOST"),"www.arnander.com")>0 Then
      Server.Execute("com/index.asp") 
ElseIf Instr(Request.ServerVariables("HTTP_HOST"),"www.adcando.com")>0 Then
      Server.Execute("adcando/index.asp")
end if
%>
```

När jag provade på detta sätt så fick jag följande felmeddelande:

Serverobjekt fel 'ASP 0228 : 80004005' 
Server.Execute-fel 
/Default.asp, rad 3 
Anropet till Server.Execute misslyckades när sidan lästes in.

Oops! Såg just att jag satt fel slash ;(
sånt som händer, hehe \*gäspar\*

/S

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

## #10 — wborg, 2003-12-17T00:10Z

Doh!

Nu vart det ju ett annat problem istället :(
Om man gör så här

```
<%
If Instr(Request.ServerVariables("HTTP_HOST"),"www.arnander.se")>0 Then
      Server.Execute("se\index.asp")
```

så får man upp index.asp i mappen se men bilder som ska finnas
på sidan laddas inte men om jag skriver in hela url:en

exempel:

```
[url]http://www.sidan.se/se/[/url]
```

så laddas bilderna in, varför? (bilderna ligger i mappen images)

/S

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

## #11 — @nders, 2003-12-17T05:19Z

Du får se till att du alltid länkar bilderna från roten.

```
<img src="/images/gammalbäver.gif">
```

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

## #12 — wborg, 2003-12-17T11:09Z

Tack @nders

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/92718-länka-rätt-baserat-på-url-en
