UTF-8 mal anders

Fragen zur Installation von CONTENIDO 4.9? Probleme bei der Konfiguration? Hinweise oder Fragen zur Entwicklung des Systemes oder zur Sicherheit?
Antworten
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

UTF-8 mal anders

Beitrag von rethus »

Es ist ja nicht so, als wenn schon alle UTF-8 Probleme hier vorgekommen wären :lol: ich habe ein neues, das mir so noch nie untergekommen ist.
Vielleicht können wir es mit gemeinsamen Gehirnschmalz lösen:

Also nach Upgrade auf 4.9.9 läuft alles sauber auf utf-8.
Alles, bis auf den RSS-Reader
umlaute.jpg
umlaute.jpg (228.4 KiB) 2921 mal betrachtet
im Backend, der über Contenido-News berichtet, und bis auf die Namen der Module im Bereich "Style ⇒ Module", linke Spalte mit den gelisteten Modulen.

[so, jetzt wird's komisch].

In der Liste links, wo ich die Module auswählen kann, werden die Umlaute zerschossen dargestellt. Nehmen wir mal mein Testmodul: Testmüdöll zu Demo-Zwecken.

In der Liste auf der Linken Seite wird es als "Testmüdöll" angezeigt. Klicke ich es an, wird der Modulname und auch Umlaute in dem Modul (in der Bearbeitungsansicht) richtig dargestellt (bild bitte hier im Forum runter scrollen!):
contenido_modul_utf_bug.jpg
contenido_modul_utf_bug.jpg (115.57 KiB) 2922 mal betrachtet
Zuerst schaue ich also in meinen Browser... Zeichencodierung UTF8
Dann schaue ich mir den Quelltext des Navi-Frames an "UTF8"
Somit werden die Zeichen schon falsch ausgeliefert (und nicht vom Browser verwurschtelt).

Also gehe ich in die DB und gebe mir die Config in Sachen Zeichensatz aus:

Code: Alles auswählen

show variables like "character_%";
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
Sieht gut aus, oder?! :!:

Also weiter... Wo ist mein Modul... /cms/modules/testmuedoell.
Dort checke ich mal die info.xml, die ja den Modulnamen enthält:

Code: Alles auswählen

<?xml version="1.0" encoding="UTF-8"?>
<module><name>Testmüdöll</name><description>ösi wäre öäpzß</description><type/><alias>testmuedoell</alias></module>
Joahhh, sieht doch auch gut aus.

Nächste Station... ist die Datei wirklich als UTF-8 gespeichert?
'file info.xml' ergibt:

Code: Alles auswählen

info.xml: XML 1.0 document, UTF-8 Unicode text
Also auch UTF8.

Ein Blick in die /data/production/config.php ... hier irritiert mich nur eins... oben bei der DB ist charset auf UTF-8 gesetzt, weiter unten am Ende der Datei steht auch was von einem UTF-8 Flag, aber weit und breit keins zu sehen... fehlt hier ggf. eine Configeinstellung:

Code: Alles auswählen

/**
 * Extended database settings. This settings will be used from CONTENIDO 4.9.0.
 *
 * @since  CONTENIDO version 4.9.0
 */
$cfg['db'] = array(
    'connection' => array(
        'host'     => 'localhost', // (string) The host where your database runs on
        'database' => 'myDB',   // (string) The database name which you use
        'user'     => 'myUser', // (string) The username to access the database
        'password' => 'meinPasswort', // (string) The password to access the database
        'charset'  => 'utf8', // (string) The charset of connection to database
    ),
    'haltBehavior'    => 'report', // (string) Feasible values are 'yes', 'no' or 'report'
    'haltMsgPrefix'   => (isset($_SERVER['REQUEST_URI'])) ? $_SERVER['REQUEST_URI'] . ' ' : '',
    'enableProfiling' => false,    // (bool) Flag to enable profiling
);

/* Section 3: UTF-8 flag
 * ----------------------------
 *
 * Setting for UTF-8 flag
 *
 * @since    CONTENIDO version 4.9.5
 */
In der config.misc.php habe ich zur Vorsicht auch nochmal den default-charset für php geprüft:

Code: Alles auswählen

 $cfg['php_settings']['default_charset'] = 'UTF-8';
Auch ok...


So, jetzt kommt Ihr...

... habt Ihr eine 4.9.9er am Start und ggf. das gleiche Problem?

...habt Ihr irgend eine Idee, warum er mir im Contenido-Backend - und zwar nur in der Modul-Liste (und RSS-News auf dem Dashboard), die Daten fehlerhaft ausgibt?
Artikel, Umlaute im Backend... alles funktioniert, warum dies nicht?


==========
PS: Nur am Rande, in der Config von 4.9.9 ist immernoch folgende Config-Zeile enthalten:

Code: Alles auswählen

$cfg['path']['pear']                    = $cfg['path']['frontend'] . '/pear/';

Könnte man mal rausnehmen, oder? 4.9.9 verwendet doch gar kein pear mehr!!
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
Faar
Beiträge: 1951
Registriert: Sa 8. Sep 2007, 16:23
Wohnort: Brandenburg
Hat sich bedankt: 15 Mal
Kontaktdaten:

Re: UTF-8 mal anders

Beitrag von Faar »

Güt, dass du das mal ansprichst, denn dieses utf-8 Pröblem störte mich auch schon.

Modüle habe ich noch nie mit ümlauten geschrieben.

:roll:
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.
frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: UTF-8 mal anders

Beitrag von frederic.schneider_4fb »

Wenn Du in der config.php das UTF8-Flag setzt:

Code: Alles auswählen

define("CON_UTF8", true);
Und dann noch einmal das Upgrade durchführst - behebt das die Probleme? Wir haben von Version 4.9.8 auf 4.9.9 allerdings außer Sicherheitslücken zu stopfen nichts geändert.
Frederic Schneider
Entwickler bei der four for business AG
frederic.schneider_4fb
Beiträge: 967
Registriert: Do 15. Apr 2004, 17:12
Wohnort: Eschborn-Niederhöchstadt
Kontaktdaten:

Re: UTF-8 mal anders

Beitrag von frederic.schneider_4fb »

rethus hat geschrieben:PS: Nur am Rande, in der Config von 4.9.9 ist immernoch folgende Config-Zeile enthalten:

Code: Alles auswählen

$cfg['path']['pear']                    = $cfg['path']['frontend'] . '/pear/';

Könnte man mal rausnehmen, oder? 4.9.9 verwendet doch gar kein pear mehr!!
Das fliegt gleich raus ;-)
Frederic Schneider
Entwickler bei der four for business AG
rethus
Beiträge: 1851
Registriert: Di 28. Mär 2006, 11:55
Wohnort: Mönchengladbach
Kontaktdaten:

Re: UTF-8 mal anders

Beitrag von rethus »

frederic.schneider_4fb hat geschrieben:Wenn Du in der config.php das UTF8-Flag setzt:

Code: Alles auswählen

define("CON_UTF8", true);
Und dann noch einmal das Upgrade durchführst - behebt das die Probleme? Wir haben von Version 4.9.8 auf 4.9.9 allerdings außer Sicherheitslücken zu stopfen nichts geändert.
Wo genau soll ich den define einfügen. Einfach in die Config? Und wann? Vor dem Upgrade auf 4.9, oder danach?
Could I help you... you can help me... buy me a coffee . (vielen ❤ Dank an: Seelauer, Peanut, fauxxami )

xstable.com: - HighSpeed Hosting, Domains, DomainReselling, Linux-Administration
suther.de: - App-Programierung, High-Performance-Webpages, MicroServices, API-Anbindungen & Erstellung

Software... ein Blick wert: GoogleCalender Eventlist, xst_dynamic_contentType
Antworten