pt004: PHP-AUsgabe in Listenform

Beitrag lesen

Hallo, dedlfix, ich schicke mal einen Link mit, die Seite ist ein typischer Auszug:

Tagesschau wird als rss-feed mit magpie parser eingelesen und mit korrektem Zeichensatz abgebildet (es sei denn ich würde bei den meta-Angaben utf-8 angeben. ZDF und NDR gibt es nicht als feed - sie werden direkt von der website mit file_get_contents eingelesen und bringen Sonderzeichen statt Umlaute. Focus und FAZ werden wieder als feed eingelesen, bringen auch korrekte Umlaute aber keine Anführungsstriche unten/oben, sondern dann nur Fragezeichen. Quelltext wirst Du ja sehen können - vielleicht hast Du ja eine Idee.

http://www.weltammontag.de/index4.php

Was ich mit livehttpheader genau anfangen soll, weiß ich noch nicht. Die Zeichenkodierung sehe ich doch auch im Quelltext.

Dank und Gruß
pt004

> Tach!

Also mal im Detail: Ich lese mit Magpie rssfeeds mehrerer webseiten ein (alles mit Genehmigung), die sind mit utf-8 codiert. Wenn sie bei mir ausgegeben werden - und ich ebenfalls utf-8 angebe, kommen trotzdem "zerschossene" Umlaute.
Hat jemand eine Idee, woran es sonst liegen kann?

An vielem. Solange du nicht sagst, wie das konkret aussieht oder eine Webseite zum schauen zeigst, wirst du keine gescheiteren Antworten bekommen können, als: Du musst es richtig machen. Dazu kann ich dir dann noch maximal Grundlagenliteratur verlinken: Themenkomplex Zeichenkodierung.

Wird für einen feed manchmal eine andere Zeichenkodierung verwendet als für die HTML-Seite überhaupt?

RSS-Feeds sind eine Form von XML, dessen Default-Kodierung UTF-8 ist. Das heißt nicht, dass man sie nicht ändern oder beim Feed-Erstellen keine Fehler machen kann.

Wenn ich für den PHP-Bereich meiner Seite noch mal extra einen bestimmten Code (header('Content-Type: text/html; charset=utf-8) festlege, hat das keine Auswirkung.

Schau nach, was der Browser bekommt und was er erkennt. Am besten finde ich dafür die livehttpheaders-Extension für den Firefox und seinen Seiteninformations-Dialog.

Rätsel über Rätsel. Gibt es keinen hunderptorzentigen Weg, den Zeichensatz einfach nach dem "echo" festzulegen?

Nein, im Dokument selbst ist es theoretisch schon zu spät. Du kannst nicht etwas dekodieren wollen, dessen Schlüssel(information) im Dokument selbst steht. Zumindest theoretisch. Praktisch basiert ja alles auf ASCII, so dass man zumindest diese Zeichen immer dekodieren kann und somit auch die Zeichnkodierungsinformation für die restlichen Zeichen auch ins Dokument schreiben kann. Die möglichen Positionen sind jedenfalls in den Unterseiten des verlinkten Dokuments beschrieben.

Außerdem habe ich noch auf meiner Seite das Problem, dass Anführungsstriche unten/oben nie richtig erscheinen, sondern immer als Fragezeichen.

Auch ein Zeichenkodierungsproblem. Du solltest dir dringend die Grundlagen dazu erarbeiten.

dedlfix.