markusschmitt
17-09-2004, 19:16
Wenn ich z.B. auf die Description mittels $node->description z.B. zugreife, bekomm ich ä ö ü nicht zurück sondern nur z.B. statt einem ö => ö.
File:
<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="0.92">
...
Woran liegt das? Umlaut sollten doch erlaubt (siehe encoding Attribut) und korrekt zurückgegeben werden!
Beispiel Ausgabe: Link (http://www.mi-ernst.de/newsfeed/newsfeed.php5?newsfeed=allgemein)
XML -> Link (http://www.mi-ernst.de/newsfeed/allgemein.xml)
MfG Markus
myfavour
17-09-2004, 20:52
hallo,
womöglich liegts ja daran:
Encoding
While RSS 0.9 supported only ASCII encoding, RSS 1.0 assumes UTF-8. Using US-ASCII (i.e. encoding all characters over 127 as &#nnn; ) is conformant with UTF-8 (and ISO-8859-1, HTTP's default header encoding).
Quelle: web.resource.org/rss/1.0/spec (http://web.resource.org/rss/1.0/spec)
markusschmitt
18-09-2004, 15:47
Also ich hab's jetzt auf 1.0 umgestellt. Also RDF. Ich bekomms net hin. Ich kann die meisten Zeichen mit & #xxx; ersetzen und wird auch im Browser richtig angezeigt. Leider gehört äöüÄÖÜ zumindest nicht dazu. Sonst noch jemand eine Idee?
MfG Markus
myfavour
19-09-2004, 08:11
hallo,
eine hätt' ich noch
ich geh mal davon aus, daß deine News, aus der Datenbank kommen --> und diese sind aller voraussicht nach utf-8
kannst Du in der Console mittels simplen select überprüfen
kopier Dir mal den folgenden Code:
$dtumlstring = "äöü";
echo "ORIGINAL: ".$dtumlstring;
echo "<br />HTMLENTITIES: ".htmlentities($dtumlstring);
echo "<br />UTF8_ENCODE: ".utf8_encode($dtumlstring);
echo "<br />UTF8_DECODE: ".utf8_decode(utf8_encode($dtumlstring));
sollte die 3 oben verwendeten Funktionen veranschaulichen
PS: Browser/Dokument Einstellung sollte ISO-8859-1 (Western Europe) sein
markusschmitt
19-09-2004, 11:51
Also, ich musste utf8_decode auf den String anwenden. SimpleXML wendet anscheinend utf8_encode auf den String an!
MfG Markus