---
title: "När ska man använda vad?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/162277-när-ska-man-använda-vad"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "axed"
published: "2007-07-07T16:50:41.000Z"
updated: "2007-07-08T09:24:01.000Z"
replies: 3
views: 406
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/php/162277-när-ska-man-använda-vad"
---

# När ska man använda vad?

## #1 — axed, 2007-07-07T16:50Z

Hej,

Funderar lite på det här med när man ska använda htmlspecialchars, addslashes etc?

Jag använder mig av PDO för att kommunicera med mysql. Vad jag förstår behöver man inte använda addslashes, stripshlases etc när man använder sk. prepared statements med PDO?

Men hur är det med htmlspecialchars? Ska man använda det på all text som ska sparas i databasen innan det just sparas eller är det när den hämtats från databasen och ska presenteras på sidan?

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

## #2 — Tulork, 2007-07-07T18:35Z

jag brukar spara allting i "råformat" och sen när något ska ut från databasen så behandlar jag datan. Mer frihet på det sättet.

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

## #3 — itpastorn, 2007-07-08T09:05Z

Filter input - escape output

> **axed skrev:**
>
> Hej,
> Funderar lite på det här med när man ska använda htmlspecialchars, addslashes etc?...

Här är grundregeln: **Filter** input - escape **output**!

htmlspecialchars - en slags escape - används alltså i det ögonblick du skall skicka data till användaren.

Databasfråga av insert, delete eller update - typ, är "output" till databasen. Då används (om man inte kör prepared statements) den funktion som stämmer med vald DBMS och valt API.

En grundtabbe är alltså följande:

1\. Skriptet börjar med en escape-funktion
2\. Data bearbetas
3\. Data lagras

Följande är rätt tågordning:

1\. Skriptet börjar med filtrering
2\. Data bearbetas
3\. Ev. data som lagras "escapas" för lagring (om ej PS)
4\. Ev. ytterligare bearbetning (av icke-escapad data/hämtning från DBMS
5\. Escape för visning på skärmen
6\. Visning på skärmen

Vad är filtrering?

Kontroll av att indata uppfyller erforderliga kriterier och korrigering av acceptabla fel.

Jag har försökt illustrera filtrering i den fil som jag bifogade <http://www.webforum.nu/showthread.php?p=1332022#post1332022> 

Den koden är tänkt att vara pedagogisk snarare än effektiv.

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

## #4 — axed, 2007-07-08T09:24Z

Ok, lite klokare blev jag nog. Tack för ett bra svar.

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

---

Tråden på webben: https://www.webforum.nu/amne/php/162277-när-ska-man-använda-vad
