Layout und Modul-Textarea leer, obwohl Daten in der DB
Verfasst: Fr 14. Feb 2014, 16:29
So, habe das Problem endlich gefunden und möchte hiermit den BUG melden.
Symptom:
In 4.9.2 geht man auf ein Layout, oder auf ein Modul, und
, die Textfelder sind leer.
Ein kurzer Blick in die DB zeigt aber, dass die Daten sehr wohl vorhanden sind.
Mysterium
Warum also werden die Daten von der DB nicht im Textfeld ausgegeben?
Ursache
Die Ursache liegt in der Codierung. Speichere ich die Daten in der DB in UTF-8 ab (so wie es ja mittlerweile "State of the Art" sein sollte
), zerschießt dass die Ausgabe vom Contenido-Backend - soll heißen, die Felder werden nicht ausgegeben.
Dies geschieht dann, wenn man Sonderzeichen in seinem Quellcode nutzt, wie das im DE-Sprachraum oft äöü usw. sind. (Übrigens, da ich die DB auf UTF-8 umgestellt habe, führt das normale Speichern im Contenido-Backend zu diesem Fehler. Gebe also ein Ü in Modul-Input oder Output ein, und wundere dich nicht, wenn nach dem speichern alle Felder wieder leer sind)
Speichert man die Daten in der DB als ISO ab (hab ich über ein DB-Tool gemacht), werden Sie wieder in den Textfeldern ausgegeben.
Fazit
Contenido ist NICHT UTF-8 save.
Große bitte an 4fb, bitte schnellstmöglich fixen. Ohne UTF-8 wird Contenido wohl nie für Fremdsprachige Websites (vor allem Kyrillischer Sprachraum) interessant. Und auch große Firmen in DE haben ausländische Niederlassungen in Russland, China, etc.
TODO
Künftige Contenido-Versionen ausschließlich mit Folgender DB-Einstellung ausliefern und weiterentwickeln:
Collation utf8_general_ci
Symptom:
In 4.9.2 geht man auf ein Layout, oder auf ein Modul, und

Ein kurzer Blick in die DB zeigt aber, dass die Daten sehr wohl vorhanden sind.
Mysterium
Warum also werden die Daten von der DB nicht im Textfeld ausgegeben?
Ursache
Die Ursache liegt in der Codierung. Speichere ich die Daten in der DB in UTF-8 ab (so wie es ja mittlerweile "State of the Art" sein sollte

Dies geschieht dann, wenn man Sonderzeichen in seinem Quellcode nutzt, wie das im DE-Sprachraum oft äöü usw. sind. (Übrigens, da ich die DB auf UTF-8 umgestellt habe, führt das normale Speichern im Contenido-Backend zu diesem Fehler. Gebe also ein Ü in Modul-Input oder Output ein, und wundere dich nicht, wenn nach dem speichern alle Felder wieder leer sind)
Speichert man die Daten in der DB als ISO ab (hab ich über ein DB-Tool gemacht), werden Sie wieder in den Textfeldern ausgegeben.
Fazit
Contenido ist NICHT UTF-8 save.
Große bitte an 4fb, bitte schnellstmöglich fixen. Ohne UTF-8 wird Contenido wohl nie für Fremdsprachige Websites (vor allem Kyrillischer Sprachraum) interessant. Und auch große Firmen in DE haben ausländische Niederlassungen in Russland, China, etc.

TODO
Künftige Contenido-Versionen ausschließlich mit Folgender DB-Einstellung ausliefern und weiterentwickeln:
Collation utf8_general_ci