CMS - Der Dirigent » Support » Installation
Neue Umfrage | neues Thema | Antworten
Umlaute (teilweise) falsch nach OS Upgrade
« Älteres Thema | Neueres Thema » Thema abonnieren | Thema versenden | Thema drucken
speedysupranet | Geschrieben am: 29. Jul 2010 - 06:59 |
Member ![]() ![]() Gruppe: Validating Beiträge: 24 Mitgliedsnummer: 2104 Mitglied seit: 10. Jun 2006 ![]() |
Ich habe letztes Wochenende von opensuse 11.0 auf 11.3 upgraded. Dadurch wurde auch PHP vom 5.2-er-Zweig auf den 5.3-er-Zwei upgraded. Alles läuft soweit gut, ausser dass die Umlaute (ö, ä, ü) alle falsch waren. Als Workaround habe ich in der php.ini default_charset = "utf-8" eingetragen. Somit sind zumindest die Texte richtig. Leider trifft das nicht auf die in Dedi installierten Navigationsmenüs zu. Da sind die Umlaute falsch. Im Backend-Bereich von dedi sind die dann aber wieder richtig. Ich habe das ganze Wochenende nach dem Fehler gesucht, aber nichts gefunden. Hat mir jemand noch einen Tipp, wie ich das beheben kann? Ich setze derzeit die Version 1.0.4 ein. Habe aber gelesen, dass es bereits eine Version 1.0.5 gibt. Kann mir da jemand weiterhelfen? Irgendetwas interpretiert PHP anders seit der Umstellung. Ich kann mir das nur noch so vorstellen, dass irgendwo der Zeichensatz falsch eingestellt ist und an einem Ort übersetzt das PHP doppelt falsch und es wird richtig dargestellt und an einem anderen Ort wird es falsch übersetzt und es kommt eben falsch. Meine Aussage stützt sich darauf, dass wenn ich das default_charset = "utf-8" wieder rausnehme, dann ist die Navigation richtig, aber alle Texte und das Backend falsch. Das gleich kann man noch einfacher anschauen, wenn man den Zeichensatz im Browser von utf-8 auf iso und wieder zurück stellt. Wenn ihr das verkorkste Resultat (Top-Navigation mit DeDi-Modul "Navigation 1.0") sehen wollt, könnt ihr das unter http://www.anomalie.name. Ansonsten möchte ich DeDi nicht missen. Es ist herrlich einfach gestrickt und man kann tolle Seiten damit bauen. Gruss Werner |
![]() ![]() ![]() |
|
speedysupranet | Geschrieben am: 30. Jul 2010 - 10:43 |
Member ![]() ![]() Gruppe: Validating Beiträge: 24 Mitgliedsnummer: 2104 Mitglied seit: 10. Jun 2006 ![]() |
Hallo miteinander Hier ein Update: Ich hatte dasselbe Problem mit einer Shopsoftware. Dort musste mir der Programmierer zwei Module anpassen, da PHP5.3 die Zeichentabellen von MySQL zum Teil anders initialisiert als PHP5.2. Zum Teil wird einfach auf einen anderen Zeichensatz umgeschaltet. Ich glaube, das ist auch das Problem bei DeDi. Ich habe die Instruktion erhalten, wie man im PHP den Zeichsatz vorgeben kann und schaue mal, wo ich das bei DeDi einbauen kann. Wenn jemand die PHP-Dateien kennt, welche die MySQL-Verbindung herstellen, bin ich sehr dankbar. Dann geht es etwas rascher. Gruss Werner |
![]() ![]() ![]() |
|
Eppi | Geschrieben am: 30. Jul 2010 - 10:47 |
![]() .....................noname ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Gruppe: Admin Beiträge: 8077 Mitgliedsnummer: 1 Mitglied seit: 23. Mar 2003 ![]() |
was passiert wenn du in der projekteinstellung den zeichensatz der sprache auf utf-8 umstellst? -------------------- "Heute ist nicht aller Tage... ich komm wieder, keine Frage!"
|
![]() ![]() ![]() |
|
speedysupranet | Geschrieben am: 06. Aug 2010 - 23:00 |
Member ![]() ![]() Gruppe: Validating Beiträge: 24 Mitgliedsnummer: 2104 Mitglied seit: 10. Jun 2006 ![]() |
Hallo Habe die Meldung leider erst jetzt gesehen. Ich habe folgendes gemacht: Ich habe das Problem gelöst. Ich musste in der Datei /backend/external/phplib/db_mysql.inc folgende Zeilen einfügen (Änderungen in rot): // Check for local connect if(!$this->PConnect) { $this->Link_ID=mysql_connect($Host, $User, $Password); } else { $this->Link_ID=msql_pconnect($Host, $User, $Password); } if ($this->Link_ID) { mysql_set_charset('latin1',$this->Link_ID); } if (!$this->Link_ID) { $this->halt("connect($Host, $User, $Password) failed."); return 0; } if (!@mysql_select_db($Database,$this->Link_ID)) { $this->halt("cannot use database ".$Database); return 0; } Zudem musste ich den Zeichensatz im Projekt auf iso-8859-15 umstellen. Jetzt ist alles wieder korrekt. Gruss Werner |
![]() ![]() ![]() |
|
speedysupranet | Geschrieben am: 19. Mar 2015 - 22:06 |
Member ![]() ![]() Gruppe: Validating Beiträge: 24 Mitgliedsnummer: 2104 Mitglied seit: 10. Jun 2006 ![]() |
Dank dem tollen Support von Eppi konnten wir gemeinsam den Fehler bezüglich den Umlauten finden und beheben. Es lag am Navigationsmodul Navigation2. Diese hatte eine fixe Zeichencodierung inkludiert, welche diese Fehler verursachte. Schritt 1: db_mysql.inc auf die originale Version zurückgesetzt Schritt 2: Projekt auf utf8 umgestellt Schritt 3: Modul Navigation2 abgeändert Anbei das korrigierte Modul Navigation2 für PHP5.5 und PHP5.6: http://www.libersec.li/download/Navigation...-fixed2.dedimod Gruss Werner |
![]() ![]() ![]() |
Thema wird von 0 Benutzer gelesen (0 Gäste und 0 Anonyme Benutzer)
0 Mitglieder:
4 Antworten seit 29. Jul 2010 - 06:59
Thema abonnieren | Thema versenden | Thema drucken