---
title: "Kolla så formuläret kommer från rätt sida?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/123181-kolla-så-formuläret-kommer-från-rätt-sida"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Bosse168"
published: "2005-02-24T13:28:21.000Z"
updated: "2005-02-24T15:45:12.000Z"
replies: 18
views: 520
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/123181-kolla-så-formuläret-kommer-från-rätt-sida"
---

# Kolla så formuläret kommer från rätt sida?

## #1 — Bosse168, 2005-02-24T13:28Z

Kan man på något sätt göra en koll som kollar att formulärets data kommer från rätt sida.
Alltså så man inte kan skapa ett eget likadant formulär och lägga det på en annan server och skicka in information den vägen.

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

## #2 — nitro2k01, 2005-02-24T13:33Z

Enkelt exempel

```
rightplace = "http://www.sida.se/form.html";

if left (Request.serverVariables("HTTP_REFERER"), len (rightplace) ) = rightplace then
    ' Kod för att skicka formuläret...
else
    Response.write("Fel, kunde inte skicka!");
endif
```

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

## #3 — @nders, 2005-02-24T13:33Z

Du kan ju kolla servervariabeln HTTP_REFERER. Men; det kommer inte alltid att stämma, eftersom vissa personliga brandväggar rensar referer-headern.

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

## #4 — J.N., 2005-02-24T13:36Z

HEJ!

Jovisst går det att fixa!

request.servervariables("HTTP_HOST") ger "www.exempel.se"

Och om du har samma domän som flera, använd HTTP_REFERER istället, ger "www.exempel.se/folder/folder/fyll_i_form.asp".

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

## #5 — nitro2k01, 2005-02-24T13:36Z

En annan variant är att sidan som formuläret ligger på genererar en engångs-kod som skickas med ett hidden-fält och kollas när formuläret skickas.

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

## #6 — nitro2k01, 2005-02-24T13:37Z

> **J.N. skrev:**
>
> request.servervariables("HTTP_HOST") ger "www.exempel.se"

 Men HTTP_HOST ger väl ända domännamnet på den sida som anropas och inte den sida man kommer från?

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

## #7 — @nders, 2005-02-24T13:38Z

> **nitro2k01 skrev:**
>
> Men HTTP_HOST ger väl ända domännamnet på den sida som anropas och inte den sida man kommer från?

Das stimmt.

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

## #8 — J.N., 2005-02-24T13:39Z

HEJ!

> **nitro2k01 skrev:**
>
> > **J.N. skrev:**
> >
> > request.servervariables("HTTP_HOST") ger "www.exempel.se"
>
>  Men HTTP_HOST ger väl ända domännamnet på den sida som anropas och inte den sida man kommer från?

Nä, det är rätt, tänkte fel.

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

## #9 — Bosse168, 2005-02-24T14:17Z

Så vad är lösningen? :)

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

## #10 — nitro2k01, 2005-02-24T14:17Z

Pröva t ex <http://www.webforum.nu/showthread.php?s=&postid=1007200#post1007200>

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

## #11 — @nders, 2005-02-24T14:18Z

... och gör man så stoppar man effektivt alla som kör Nortons personliga brandvägg, till exempel.

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

## #12 — Bosse168, 2005-02-24T14:19Z

Men det funkade ju inte bakom vissa [brandväggar](http://www.webforum.nu/showthread.php?s=&postid=1007201#post1007201) .

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

## #13 — @nders, 2005-02-24T14:25Z

Ett annat alternativ är ju att du på någon annan sida (eller alla andra sidor) sätter en sessioncookie, som du sedan kollar av. Gör man en inloggning från en annan sida, så har man ju inte sessioncookien.

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

## #14 — Bosse168, 2005-02-24T14:27Z

Men blir inte det "jobbigt" för servern för det är ganska många som använder det formuläret.

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

## #15 — Bosse168, 2005-02-24T15:30Z

Finns det inga andra lösningar än HTTP_REFERER och sessions?

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

## #16 — nitro2k01, 2005-02-24T15:32Z

Du kan ju som sagt även [använda en engångskod](http://www.webforum.nu/showthread.php?s=&postid=1007206#post1007206) som alltså skickas med ett input type="hidden"-fält, och inte genom en cookie.

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

## #17 — Bosse168, 2005-02-24T15:36Z

Förstår inte hur man får engångskoden att funka?

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

## #18 — nitro2k01, 2005-02-24T15:42Z

Pseudokod:

```
[u]Sidan som visar formuläret:[/u]
skapa slumpad kod
spara koden i databasen tillsammans med klockslaget
skriv ut slumpkoden i ett hiddenfält i formuläret

[u]Sidan som tar emot formuläret:[/u]
Läs av querystring efter kod

IF (koden finns ej OR koden = "")
  felmeddelande()
ELSE
  posta formuläret
  ta bort koden ur databasen så att den inte kan användas igen
ENDIF
```

 
Hur den riktiga koden ska se ut vet jag inte riktigt, särskilt som jag intesysslar med asp för det mesta.

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

## #19 — Bosse168, 2005-02-24T15:45Z

Det är ju inte några större problem att skapa ett hiddenfält på sidan som ligger på en annan server.

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/123181-kolla-så-formuläret-kommer-från-rätt-sida
