---
title: "Riktigt svår nöt att knäcka?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/61369-riktigt-svår-nöt-att-knäcka"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Mungo"
published: "2002-12-06T13:32:32.000Z"
updated: "2002-12-08T11:24:56.000Z"
replies: 6
views: 572
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/61369-riktigt-svår-nöt-att-knäcka"
---

# Riktigt svår nöt att knäcka?

## #1 — Mungo, 2002-12-06T13:32Z

Jag sitter och lägger in ett FORM i ett HTML-mail som skickas ut till användare av ett forum jag skrivit. När man får ett mail ska man alltså direkt i mailet kunna svara på ett inlägg i formuläret. Ett klick på "submit" postar sen innehållet till ett PHP-script.

Det hela funkar bra, förutom att svenska tecken blir förvanskade på ett sätt jag inte sett förut. Oavsett om jag använder GET eller POST så blir det förvandlat till detta:

å, ä, ö blir Ã¥, Ã¤, Ã¶ 

Å, Ä, Ö blir Ã…, Ã„, Ã–

Har nån sett detta förut och kan hjälpa till med hur man konverterar dessa på nåt vettigt sätt? Tack!

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

## #2 — Jörgen HP, 2002-12-06T14:02Z

Hade för mig att liknande problem varit uppe innan med å, ä och ö. Hittade vad jag sökte, hoppas det mot förmodan på något sätt kan hjälpa till:

<http://www.webforum.nu/showthread.php?s=&threadid=48062>

RED: såg sedan att du själv deltagit i den tråden.  :r

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

## #3 — jarvklo, 2002-12-06T21:13Z

Hmm...
Ser ut som om du får ÅÄÖ osv i Unicode (men jag är inte säker)
Vad händer om du provar [utf8-decode](http://www.php.net/manual/en/function.utf8-decode.php) ? 

Om inte det fungerar så fick jag för mig att [base64-decode](http://www.php.net/manual/en/function.base64-decode.php) har med teckenkodning och e-post att göra ;)

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

## #4 — Mungo, 2002-12-06T22:56Z

Japp, du hade rätt! utf8_decode funkade väldigt bra. 

MEN: Nu visar det sig att det är som så att det bara är formulär submittade från Mozillas mailklient som ger Unicode-resultat. Så när jag nu kör utf8_decode() på strängen blir det fel om "åäö" kommer in från t.ex. Outlook, som tydligen har nån annan kodning, så då blir "åäö" till "???"... :)

Finns det nåt sätt att kolla i en sträng om den är unicode?

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

## #5 — jarvklo, 2002-12-07T12:52Z

Hmm...
Borde finnas med en "encoding"-parameter i http-request:en när informationen överförs (fast jag kommer inte ihåg vad den heter på rak arm)...
Har inte tid att kolla just nu. Men sök i phpmanualen efter http-request headers eller liknande efter encoding...

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

## #6 — jarvklo, 2002-12-07T21:04Z

Nu har jag kollat...

Den http-header jag for efter (HTTP_ACCEPT_CHARSET) ger inte mycket info om det inskickade datat eftersom MSIE6 inte verkar skicka den alls, och Moz1.1 skickar den med ett värde som betyder att den hanterar både ISO-8859-1 och UTF-8 och att det kvittar den vilken (UTF-8 är Unicode).

Däremot klickade det till i skallen och jag kom ihåg att man faktiskt kan tala om i \<form\>-taggen vilken teckenkodning man vill ha med attributet [accept-charset](http://www.w3.org/TR/html4/interact/forms.html#h-17.3) som 

> specifies the list of character encodings for input data that is accepted by the server processing this form

 Fast det är ju en annan femma om det sedan verkligen fungerar förståss ;)

Fixar 

```
<form action="post" method="..." accept-charset="ISO-8859-1">
```

 ditt problem?

*(OBS att charsets (UTF-8, ISO-8859-1 osv) **skall** skrivas med stora bokstäver, även om du använder xhtml !!)*

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

## #7 — Mungo, 2002-12-08T11:24Z

Jag lyckades faktiskt hitta en funktion som kollar vilken encoding en sträng innehåller, den heter mb_detect_encoding() och såhär kunde jag använda den:

```php
/* "auto" is expanded to "ASCII,JIS,UTF-8,EUC-JP,SJIS" */
if (mb_detect_encoding($name, "auto") == "UTF-8") $name = utf8_decode($name);
```

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

---

Tråden på webben: https://www.webforum.nu/amne/php/61369-riktigt-svår-nöt-att-knäcka
