[NG] RSS-/Atom-Feed und Sonderzeichen - Druckversion +- MyBB.de Forum (https://www.mybb.de/forum) +-- Forum: Archiv (https://www.mybb.de/forum/forum-57.html) +--- Forum: MyBB 1.2.x und älter (https://www.mybb.de/forum/forum-27.html) +---- Forum: Bugs (https://www.mybb.de/forum/forum-40.html) +----- Forum: Gemeldete/Nicht gemeldete Bugs (https://www.mybb.de/forum/forum-41.html) +----- Thema: [NG] RSS-/Atom-Feed und Sonderzeichen (/thread-8398.html) |
[NG] RSS-/Atom-Feed und Sonderzeichen - Boardie05 - 20.01.2008 Hallo, mir ist ein Problem mit der Behandlung von Sonderzeichen im RSS-Feed aufgefallen. Der Titel meines Forums (Boardname) enthält ein "&". Mein RSS wird in der Kodierung UTF8 ausgeliefert. Das "&" müsste laut Spezifikation doch (auch bei UTF8) als "&" kodiert ausgeliefert werden. Leider kommt folgendes heraus (im Quelltext bei RSS und Atom): Code: & Diese Kodierung für das "&" findet sich beim RSS-Feed in den Tags "title" und "description", im Atom-Feed in den Tags "title" und "subtitle". Bei der Ausgabe des RSS-Feeds im Browser/Feedreader erscheint Code: & Code: & Ansonsten arbeitet die Ausgabe der Feeds bei mir einwandfrei und auch die Umlaute werden korrekt dargestellt. Ich habe mir auch schon die Datei "class_feedgeneration.php" angesehen. In dieser Datei gibt es die Funktion "sanitize_content($content)". In dieser Funktion wird scheinbar erst eine Ersetzung des "&" durch "&" durchgeführt, danach wird das Ganze noch einmal per "htmlspecialchars_uni($content)" konvertiert (hierbei werden ja alle "&" durch "&" ersetzt, oder?). Was kann man ändern, damit man
Gruß Boardie05 RE: RSS-/Atom-Feed und Sonderzeichen - CoolRunner - 20.01.2008 Wo wir schon beim Thema sind die Zeichen=, > und < werden im RSS auch falsch dargestellt. -> Damit die Ausgabe stimmt müssen aber die echten Zeichen und nicht die gewandelten übertragen werden, deswegen ist htmlspecialchars_uni am Ende von sanitize_content falsch! <- So geht es: class_feedgeneration.php Ersetzte die Funktion sanitize_content durch diese: PHP-Code: function sanitize_content($content) Getestet hf Das ist ein echter Bug im mybb, ist der schon gemeldet? RE: RSS-/Atom-Feed und Sonderzeichen - Michael - 20.01.2008 Ich werde das weiterleiten. RE: RSS-/Atom-Feed und Sonderzeichen - Boardie05 - 20.01.2008 @CoolRunner: Danke! Ich habe den Code getestet. Er funktioniert bei mir einwandfrei @Michael: Danke für's Weiterleiten. Das MyBB ist 'ne tolle Software. So werden Schritt für Schritt auch die kleinen Problemchen eliminiert Gruß Boardie05 RE: RSS-/Atom-Feed und Sonderzeichen - Boardie05 - 20.01.2008 CoolRunner schrieb:[...] Was mir noch auffällt: Das Forum hier ersetzt innerhalb der PHP-Tags Code: > Code: < Hier also nochmal der unformatierte Code von Coolrunner (damit es wirklich funktioniert): class_feedgeneration.php Ersetze die Funktion sanitize_content durch diese: Code: function sanitize_content($content) Gruß Boardie05 RE: RSS-/Atom-Feed und Sonderzeichen - CoolRunner - 20.01.2008 Gut das Dir das auffällt, das ist ja an sich schon wieder ein anderer Bug (das mit den php Tags). Man kann also < und > nicht innerhalb eines php Tags verwenden. RE: RSS-/Atom-Feed und Sonderzeichen - Boardie05 - 21.01.2008 Ja, das sollte auch noch gemeldet werden. Sind aber alles keine groben Fehler sondern eher kleine Darstellungsfehler. Es wäre aber schön, wenn die Behebung mit in die nächste Version einfließen würde. Gruß Boardie05 RE: [NG] RSS-/Atom-Feed und Sonderzeichen - Michael - 13.02.2008 Ich habe das Ganze gerade in der aktuellen Entwicklerversion von MyBB 1.4 getestet. Der Feed wird validiert und die Anzeige ist korrekt. Somit scheinen diese Dinge schon behhoben worden zu sein. |