Seltsames Kodierungsproblem

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
hhcm
Regular
Posts: 5
Joined: Thu Aug 28, 2008 10:03 am

Seltsames Kodierungsproblem

Post by hhcm »

Hallo zusammen,

ich habe ein komisches Problem welches mich zur Verzweiflung treibt.
Es geht um z.B diese Seite.

Im Header und teilweise im Menü erscheinen teilweise alle Umlaute korrekt, manchmal nicht.

Das Problem ist dieses "manchmal". Ich könnte es verstehen wenn es IMMER fehlerhaft dargestellt wird, allerdings kann ich mir keinen reim auf (mal ja mal nein) machen.

Hat irgendjemand einen Tip?

Gruß
Christian
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Seltsames Kodierungsproblem

Post by garvinhicking »

Hi!

Geht es immer nur um die beiden Umlaute im Header und in der Seitenleiste? Ich würde einfach in der Blogkonfiguration den Bloguntertitel nochmal neu eintragen, und auch in dem HTML Klotz mit dem Impressum den Text nochmal neu einfügen...

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
hhcm
Regular
Posts: 5
Joined: Thu Aug 28, 2008 10:03 am

Post by hhcm »

Hallo,

das Problem ist, der Blog kommt von dem Blogdienst 1on.de .. Das ganze mal eben so für 2000 Blogs machen ist etwas kompliziert :wink:

Mich interessiert eher, wie so etwas passieren kann. Und ja, es geht immer nur um den Header und um die Seitenleiste. Die Blogeinträge ansich sin immer i.O.

Das wurmt mich ja gerade.
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!

Wenn Header und erster Seitenklotz von 1on.de vielleicht automatisch per Script vergeben werden, könnte es sein dass deren Script keine korrekte Datenbank-Zeichensatzverbindung aufbaut.

So etwas kann immer dann passieren wenn Skripte oder Aktionen auf die Datenbank zugreifen ohne denselben Zeichensatz zu nutzen der im Blog konfiguriert wurde.

In dem Fall müsste sich der 1on.de Support evtl. mal dazu äussern, wie das ganze von Statten geht.

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
hhcm
Regular
Posts: 5
Joined: Thu Aug 28, 2008 10:03 am

Post by hhcm »

Hehe.. Ich bin teil des 1on Supports :oops:

Mir ist einfach nicht klar warum mal ja mal nein.
Vor allem ohne etwas zu ändern. Als wenn bei der Aushandlung des Zeichensatzes bei Los entschieden wird.

Die Scripte die den Blog anlegen verwenden UTF8, der Blog benutzt UTF8, der Apache liefert in UTF8. Scheinbar wird da wirklich gewürfelt.
Ich kann mir das nicht mehr erklären.

//Edit
Was ich noch sagen wollte, das ganze passiert erst nach der Umstellung auf S9y 1.3.1

Was ich nicht ausschliessen will ist ein Fehler im Script, welches die Datenbanken anlegt bzw. Upgedated hat.
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!

Wo bzw. wie setzt ihr denn den HTML Klotz und die Beschreibung ein? Wie ist der Workflow in eurem script?

Bei s9y gibt es (aber schon immer) einen kleinen Bug. Der Installer arbeitet standardmäßig ohne Zeichensätze, also mit ISO-8859-1. Wenn man dort Umlaute in die Felder einträgt, werden die falsch kodiert in der Datenbank gespeichert. Das kann man dann nur beheben indem man nach der Installation den korrekten Titel einträgt. Leider ist das ein sehr tiefgreifendes Problem, bei dem ich mir nicht klar bin wie man es beheben kann.
Scheinbar wird da wirklich gewürfelt.
Computer arbeiten deterministisch. ;) Es muss also schon ein reproduzierbares Verhalten geben, das muss man debuggen.

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
hhcm
Regular
Posts: 5
Joined: Thu Aug 28, 2008 10:03 am

Post by hhcm »

garvinhicking wrote:
Wo bzw. wie setzt ihr denn den HTML Klotz und die Beschreibung ein? Wie ist der Workflow in eurem script?
Die Beschreibung, sowie auch alle anderen Einstellungen, werden mittels eines normalen SQL Befehls in die Userdatenbank eingetragen.

z.B

INSERT INTO $tableName VALUES ('blogTitle', '$blogUserTitle', 0),
('blogDescription', '$blogUserDescription', 0);

Der installer wird komplett übergangen. Wir erstellen auch die /serendipity_config_local.inc.php und die Apache Vhostdatei per Script.

Mein Vorgänger hatte wohl beim erstellen der Tabellen für jedes Textfeld ein "collate utf8_unicode_ci" mit in die Anweisung gepackt. Und die Tabelle mit "ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;" angelegt.

Ob das einen gravierenden Unterschied für s9y macht weiss ich nicht.
garvinhicking wrote: Bei s9y gibt es (aber schon immer) einen kleinen Bug. Der Installer arbeitet standardmäßig ohne Zeichensätze, also mit ISO-8859-1. Wenn man dort Umlaute in die Felder einträgt, werden die falsch kodiert in der Datenbank gespeichert. Das kann man dann nur beheben indem man nach der Installation den korrekten Titel einträgt. Leider ist das ein sehr tiefgreifendes Problem, bei dem ich mir nicht klar bin wie man es beheben kann.
Da wir den installer ja nicht wirklich nutzen, weiss ich nicht ob das relevant ist.
garvinhicking wrote: Computer arbeiten deterministisch. ;) Es muss also schon ein reproduzierbares Verhalten geben, das muss man debuggen.
Wenn dieses verhalten deterministisch ist, dann bin ich der Papst :D
Die Aushandlung des Zeichensatzes muss ja irgendwo explizit festgelegt werden. Scheinbar kann sich irgend ein Script, Daemon oder Browser nicht entscheiden WAS - WIE angezeigt werden soll.
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!
Die Beschreibung, sowie auch alle anderen Einstellungen, werden mittels eines normalen SQL Befehls in die Userdatenbank eingetragen.
Macht ihr vorher ein "SET NAMES utf8"?

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
hhcm
Regular
Posts: 5
Joined: Thu Aug 28, 2008 10:03 am

Post by hhcm »

Ja, das wird gemacht. UTF8 war noch nie mein Freund, und ich merke immer mehr warum nicht.
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!

Hm, dann verstehe ich nicht wirklich, was hier schief laufen sollte. Wenn ihr die s9y konfiguration erzeugt, setzt ihr dann auch den wert der blogs von "charset" auf UTF-8, und aktiviert die dbNames variable?

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Post Reply