Hallo,
ich versuche jetzt schon seit Stunden ergebnislos, einen RSS Feed mit PHP
zusammenzubauen, scheinbar habe ich da ein Brett vorm Kopf ..
Es sollen Beiträge aus einer MySQL-Datenbank geholt werden, die dort im
HTML-Format abgelegt sind; d.h., zB die deutschen Umlaute sind mit & ouml;
etc. kodiert, und es sind auch HTML-Tags für Absätze etc. enthalten (im
Rahmen des aktuellen Problems kommen mit gerade Zweifel, ob es überhaupt
klug ist, das so in die Datenbank zu schreiben).
Um die Felder jetzt in einem RSS 2.0 Feed anzuzeigen, müßten ja m.E. die
Umlaute wieder von HTML-Kodierung zurückverwandelt werden in "richtige"
Umlaute, sonst gibts einen XML Parsingfehler (sowas wie "XML parsing error:
<unknown>:32:10: undefined entity").
Ich habe es, zB für ein Feld text, das aus der DB kommt, versucht mit
$tab = get_html_translation_table(HTML_SPECIALCHARS);
$tab = array_flip($tab);
$text = strtr(strip_tags($row[text]),$tab);
aber das scheint nicht richtig zu sein - vermutlich verstehe ich die
Funktion nicht wirklich.
htmlentities()
scheint ja genau das Gegenteil von dem zu tun, was ich brauche. Irgendwie
drehe ich mich jetzt im Kreis und weiß nicht genau, ob mit nur die richtige
PHP Funktion fehlt - vielleicht fehlt mir aber auch einfach das Wissen, wie
ich das im XML zusammenbaue. Ich frag jetzt erstmal nach der Funktion ;o)
In den kodierten Umlaut habe ich hier ein Leerzeichen eingefügt, damit er
nicht versehentlich unkodiert angezeigt wird.
Gruß und danke für Anregungen
Erik
-----------------
Nachtrag:
Trotzdem hier noch der fehlerhafte Quellcode des erzeugten XML-Feeds,
vielleicht hilft der ja was - mit dem kodierten Umlaut in der letzten Zeile:
<?xml version="1.0" encoding="iso-8859-1" standalone="yes"?>
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns="http://purl.org/rss/1.0/"
>
<channel rdf:about="http://www.irgendwas.de/">
<title>Forenbeiträge auf irgendwas.de</title>
<link>http://www.irgendwas.de/rss_forum.php</link>
<description></description>
<dc:publisher>irgendwas.de</dc:publisher>
<dc:creator>irgendwer</dc:creator>
<dc:date>2007-07-27T08:35:47Z</dc:date>
<dc:language>en</dc:language>
<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<sy:updateBase>2000-01-01T00:00:00Z</sy:updateBase>
<items>
</items>
</channel>
<item rdf:about="http://www.irgendwas.de/842">
<item rdf:about="http://www.irgendwas.de/841">
<title>Text mit einem zerst& ouml;rten Umlaut ...</title>
