---
title: "Å, ä, ö i och html-kod i en xml fil som jag läser in från PHP?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/115062-å-ä-ö-i-och-html-kod-i-en-xml-fil-som-jag-läser-in-från-php"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "sailsoft"
published: "2004-11-04T07:04:23.000Z"
updated: "2004-11-04T13:18:03.000Z"
replies: 19
views: 1369
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/115062-å-ä-ö-i-och-html-kod-i-en-xml-fil-som-jag-läser-in-från-php"
---

# Å, ä, ö i och html-kod i en xml fil som jag läser in från PHP?

## #1 — sailsoft, 2004-11-04T07:04Z

Jag lyckades kompilera PHP5 så den fattade xml men sen fick jag nya problem:

Min xml-fil ser ut så här:

\</epostMeddelande\>
	\<rubrik\>Rubrik med å, ä och ö\</rubrik\>
	\<meddelandeText\>Meddelande i vanlig text\</meddelandeText\>
	\<meddelandeHTML\>Meddelandet i HTML\</meddelandeHTML\>
\</epostMeddelande\>

Rubriken kommer inte funka, den klagar på å, ä och ö. Sen så vill jag klistra in html-kod i meddelandeHTML taggen, men det får ju inte vara taggar för då blir dom ju också xml-taggar.

Hur ska man göra?

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

## #2 — @nders, 2004-11-04T07:06Z

> Sen så vill jag klistra in html-kod i meddelandeHTML taggen, men det får ju inte vara taggar för då blir dom ju också xml-taggar.

Du får lägga in en CDATA-sektion i xml-filen.

Vad har du angett för encoding i din XML-fil?

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

## #3 — sailsoft, 2004-11-04T07:09Z

Jag har lagt till:

\<?xml version="1.0" encoding="iso-8859-1" ?\>

Hur menar du med CDATA, har du något exempel?

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

## #4 — @nders, 2004-11-04T07:12Z

```
<epostMeddelande>
	<rubrik>Rubrik med å, ä och ö</rubrik>
	<meddelandeText>Meddelande i vanlig text</meddelandeText>
	<meddelandeHTML>
	<![CDATA[<br/><h1>rubriken eller nått</h1>]]>
	</meddelandeHTML>
</epostMeddelande>
```

Jag antar att du inte har en slash först i det första elementet i ditt xml-exempel, f.ö.

mvh

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

## #5 — sailsoft, 2004-11-04T07:15Z

Nej, jag klippte och klistrade en hel del :-)) Det blev lite fel...

Ok tack, men hur skall jag göra med å, ä och ö, samma sak som med html-kodning lr?

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

## #6 — @nders, 2004-11-04T07:17Z

> Ok tack, men hur skall jag göra med å, ä och ö, samma sak som med html-kodning lr?

Exakt vad för felmeddelande får du?

Jag tycker att det borde funka så länge man anger rätt encoding i xml-filen.

Dock skall tilläggas, att jag kan inte det minsta om php. =)

mvh

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

## #7 — sailsoft, 2004-11-04T07:22Z

Det blir så här:

Rubrik:
Rubrik pÃ¥ epost

Meddelandet i HTML:
rubriken eller nÃ¥tt

Jag använder $objXml = simplexml_load_file($sokvagFil);

Jag funderar om det är den klassen som "misshandlar" icke-europeiska tecken :-))

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

## #8 — @nders, 2004-11-04T07:29Z

Prova med UTF-8 som encoding istället.

mvh

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

## #9 — sailsoft, 2004-11-04T07:35Z

\<?xml version="1.0" encoding="UTF-8" ?\>

Meddelande i HTM med Ã¥, Ã¤, Ã¶L

Funka lika dåligt...

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

## #10 — @nders, 2004-11-04T07:37Z

Då har jag dessvärre inga idéer just nu, utan jag lämnar över till andra som vet något om php och inläsningen av filen.

Lycka till!

mvh

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

## #11 — sailsoft, 2004-11-04T07:40Z

Tack ändå för hjälpen, det är gult värt att använda webforum :-))

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

## #12 — Patrik81, 2004-11-04T10:11Z

Hej :)

Hur skapas xml-filen? Eller rättare sagt, har du någon kontroll över processen då den skapas? För isåfall kanske det vore en tanke att försöka få åäö till & aring; & auml; &ouml; direkt?

En liten tanke bara :)
MVH Patrik

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

## #13 — sailsoft, 2004-11-04T10:45Z

Jag skapar xml filen själv, men skriver jag & aring; så står det så i rubriken, jag undrar om probleme ligger i simplexml_load_file, det står ju att den är på försöksstadiet...

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

## #14 — jarvklo, 2004-11-04T11:16Z

Hmm..

Om man skall gissa efter hur det *brukar* kunna vara med XML-tolkar, så kör de ofta med UTF-8 som intern encoding oavsett vad filer man petar in i dem har för encoding...

Vilket gör att man oavsett encoding på indatat ofta brukar få UTF-8-encoding på strängarna man läser ut från sina xml-tolkade datastrukturer... 
Alltså oavsett om datat var kodat i t.ex. ISO-8859-1 eller i UTF-8 innan inläsningen... 

Jag tycker alltså det ser ut som om det du "får ut" ut ditt objekt alltid verkar bli kodat i UTF-8...  Vilket gör att du (om detta antagande stämmer) måste ange UTF-8 som teckenkodning **på den webbsida som skall visa resultatet** för att det skall fungera! (eller köra en konvertering från UTF-8 till t.ex. ISO-8859-1 på varje sträng du plockar ut ur XML-objektet  om du hellre vill köra med ISO-8859-1 där)

Det borde alltså kunna bli bättre bara genom att du provar med att peta in en 

```
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
```

 i \<head\> på den PHP-sida du meckar med ;)

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

## #15 — sailsoft, 2004-11-04T11:40Z

Nu använder jag iso-8859-1 som encoding, när jag kollar på datan på skärmen (skriver ut xml-filen med PHP) så står det: 

Meddelande i HTML med Ã¥,Ã¤,Ã¶

Men om man väljer att visa källa så står det:

Meddelande i HTM med å,ä,ö

Problemet är att i mailet som man som skickar så står det  Ã¥,Ã¤,Ã¶, fattar inte varför det visas som det gör...

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

## #16 — jarvklo, 2004-11-04T11:51Z

Jaja men om du använder UTF-8 då du tittar på datat på skärmen då - blir det inte bra då ? 
Det är liksom antagligen grundbulten i hela problemet som jag ser det

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

## #17 — sailsoft, 2004-11-04T11:57Z

Vilken kodning skall jag använda då? Innehållet i xml-filen skall sedan e-postas...?

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

## #18 — jarvklo, 2004-11-04T12:13Z

Hmm...

Nu skall vi se om jag förstår vad du egentligen försöker göra..
Jag antar att du gör såhär:
1) Du har en extern XML-fil kodad med ISO-8859-1

2) Du läser in den med $objXml = simplexml_load_file($sokvagFil);

3) Du plockar sedan ut strängar ur $objXml med hjälp av någon eller några av dess accessmetoder...

4) Det datat du plockat ut ur objektet (som "by default" antagligen alltid är UTF-8-kodat vad du än har haft för encoding på infilen) läggs antingen upp på din testsida eller i det e-mail du skapar via textsträngar...

Om det är så - så är nog det enklaste att du kör ISO-8859-1 som du är van överallt, och tar hjälp av t.ex.  [utf8-decode](http://se2.php.net/manual/en/function.utf8-decode.php) för att konvertera tecknen i varje sträng du "plockar ut" ur $objXml till ISO-8859-1 ...

:bire

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

## #19 — sailsoft, 2004-11-04T12:54Z

Tack, utf8-decode löste problemet nu!

Stora tack, jag ska testa vidare och dyker det upp något så skriver jag ett nytt inlgg :-)

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

## #20 — jarvklo, 2004-11-04T13:18Z

Keep 'em coming - det finns inga dumma frågor :e

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

---

Tråden på webben: https://www.webforum.nu/amne/php/115062-å-ä-ö-i-och-html-kod-i-en-xml-fil-som-jag-läser-in-från-php
