---
title: "Inmatningssäker databas"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/122144-inmatningssäker-databas"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Klauz"
published: "2005-02-10T10:38:00.000Z"
updated: "2005-02-10T19:20:10.000Z"
replies: 10
views: 420
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/122144-inmatningssäker-databas"
---

# Inmatningssäker databas

## #1 — Klauz, 2005-02-10T10:38Z

Försöker göra en inmatningssäker valideringsfunktion! Har kommit såhär långt, men har fortfarande problem.

\<% Function ReplaceSpecialChars(arg)
 strReplaceTemp = arg
 If not isNull(strReplaceTemp) then
  strReplaceTemp = replace(strReplaceTemp,"&","och")
  strReplaceTemp = replace(strReplaceTemp,"\<","")
  strReplaceTemp = replace(strReplaceTemp,"\>","")
  strReplaceTemp = replace(strReplaceTemp,"'","''")
  strReplaceTemp = replace(strReplaceTemp,"""","&quot;")
 End if
 ReplaceSpecialChars = strReplaceTemp
 strReplaceTemp = ""
End function %\>

Databasen för inmatningarna är en Access-db. Det går fortfarnade inte att infoga " (citattecken) , vet inte vad som är fel. Har testat med både ' och " - tecken. Det går ju inte att köra Replace(string, """, "'"), finns det nåt alternativ?

Ge gärna tips på fler osäkra tecken som jag kan Replace:a i funktionen! :)

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

## #2 — @nders, 2005-02-10T10:50Z

Re: Inmatningssäker databas

Jag förstår inte varför du replacear \<, \>, & och ".
Av de tecknen du har i din funktion kan jag inte se att något annat än apostrof skulle vara farligt att mata in i databasen.

Jag skulle alltså tagit bort de ersättningarna.

Sedan: snälla, använd \[kod\]-taggar när du postar kod, så går koden lättare att läsa.

mvh

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

## #3 — mrblonde, 2005-02-10T11:02Z

Du behöver bara ta hand om ' när du sparar data. Sen när du skall visa det på din webbsida så använd Server.HTMLEncode(strDinVariablemMedData) så ser den till att inte \<\> mm blir problematiskt.

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

## #4 — Klauz, 2005-02-10T15:01Z

Alright, tack för tipset med HTMLEncode!

Anledningen till de "onödiga" tecknen är att den även ska funka att skicka innehållet till Flash-filer. Där brukar &-tecknet strula till det.

Ska bättra mig när det gäller att visa kodsnuttar!  :r

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

## #5 — @nders, 2005-02-10T18:12Z

> **Klauz skrev:**
>
> Anledningen till de "onödiga" tecknen är att den även ska funka att skicka innehållet till Flash-filer. Där brukar &-tecknet strula till det.

Du bör i alla fall inte förstöra datat innan du stoppar in det i databasen. Gör förändringarna endast vid "utskriften" till flash-filen. Server.HTMLEncode som mrblonde tipsar om borde ta hand om det mesta. :)

mvh

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

## #6 — K@llen, 2005-02-10T18:49Z

> **mrblonde skrev:**
>
> Du behöver bara ta hand om ' när du sparar data. Sen när du skall visa det på din webbsida så använd Server.HTMLEncode(strDinVariablemMedData) så ser den till att inte \<\> mm blir problematiskt.

Inte enligt detta svar:
<http://www.webforum.nu/showthread.php?s=&postid=980558#post980558>

Ser fram emot en mer utförlig beskrivning från emissions sida. För detta har också varit min tro. :)

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

## #7 — Klauz, 2005-02-10T18:52Z

htmlencode

ok , är det dumt att köra Server.HTMLEncode när man infogar datan i db istället för när man skriver ut den?

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

## #8 — Erik Juhlin, 2005-02-10T18:54Z

Är det numeriska, booleanska eller datumvärden så blir det ju en annan femma. Dock löser det sig oftast om man gör en typskonvertering.
Ett annat fall där det kan blir problem:

```
sql = "SELECT * FROM tblFoo ORDER BY " & Request("OrderBy")
```

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

## #9 — Erik Juhlin, 2005-02-10T18:55Z

Klauz: Ja. Modifiera inte datan innan du stoppar in den i databasen.

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

## #10 — @nders, 2005-02-10T18:55Z

Ja, det är dumt att förändra datat. Datat tar mer plats och är inte lika sökbart om du förstör innehållet.

Mvh

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

## #11 — Klauz, 2005-02-10T19:20Z

Tack då vet jag!  :)

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/122144-inmatningssäker-databas
