---
title: "Det här med \"magic quotes\"..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/14545-det-här-med-magic-quotes"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Swey"
published: "2000-05-24T20:46:00.000Z"
updated: "2000-05-26T19:48:00.000Z"
replies: 5
views: 455
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/14545-det-här-med-magic-quotes"
---

# Det här med "magic quotes"...

## #1 — Swey, 2000-05-24T20:46Z

...går mig på nerverna!

Är det något som vet hur det fungerar? Om jag skriver "c:\\" i ett formulär så kommer det in som "c:\\\\". Detta vill jag inte ha utan jag vill ha "c:\\". Är det en bugg eller en funktion?

När ska jag använda StripSlashes på den för att få bort \\? Har märkt att det inte behövs vid echo men därimot vid annat fall.

Snälla, någon som förstår?

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

## #2 — Robban, 2000-05-24T21:32Z

Det är en funktion. :)

Om vi tar följande rad som exempel:

$foo = "m\\no";

Där står: 'm' 'newline' 'o'. Inte: 'm' '\\' 'n' 'o'.

Tecknet '\\' används för att ge speciell betydelse till andra tecken. Och det innebär att man måste ange '\\\\' om det är '\\' man vill ha.

Anledningen till att inte detta syns när du använder echo är att alla specialtecken ersätts när du skriver ut en sträng ('\\\\' visas som '\\' och '\\n' visas som 'newline').

Om denna avkodning skall ske automatiskt eller inte kan du styra från [php.ini](http://www.php.net/manual/configuration.php#ini.magic-quotes-gpc) (och jag tror även det finns en funktion som gör att du kan styra det på scriptbasis). Innebär dock inte att PHP i sig behandlar '\\' annorlunda.

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

## #3 — Swey, 2000-05-24T21:46Z

Tack för svaret...

Jo det känner jag till från C.

Det finns dock två problem.
1\. Varför fungerar inte det i andra funktioner än echo? Om jag använder
fwrite("rad1\\nrad2") så ska det stå
rad1
rad2
men det gör ju inte det. Inte när det är inkommande deta iaf. Utan det står rad1\\nrad2 i filen. Varför?

\--

Ett annat problem jag har är att jag inte är administratör på servern jag använder och därför inte kan ändra php.ini :(

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

## #4 — Robban, 2000-05-25T01:13Z

Läser man [dokumentationen för fwrite](http://www.php.net/manual/function.fwrite.php) så står det:

  

> Note that if the length argument is given, then the magic_quotes_runtime configuration option will be ignored and no slashes will be stripped from string.

Man verkar alltså kunna påverka detta beteende genom att ändra [magic_quotes_runtime](http://www.php.net/manual/function.set-magic-quotes-runtime.php) (har inte möjlighet att testa nu).

Har du provat med fputs()?

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

## #5 — Swey, 2000-05-25T09:42Z

Den texten måste jag ha missat.

Fast det är ju endast om man anger längden och det har jag ju inte gjort :q

Jag har samma problem med databas-funktionerna.

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

## #6 — Swey, 2000-05-26T19:48Z

Yohoo... någon som vet?

Om inte det så kanske någon vet hur man kan överskrida inställningarna i php.ini för en speciell mapp utan att vara administratör?

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

---

Tråden på webben: https://www.webforum.nu/amne/php/14545-det-här-med-magic-quotes
