ConPresso Community

Fragen, Antworten, Diskussionen rund um das Content Management System ConPresso

 
Sonderzeichenproblem
Gehe zu Seite 1, 2  Weiter
 
Neue Antwort erstellen    ConPresso Community Foren-Übersicht -> laufender Betrieb ConPresso 4
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
dutch
ConPresso-Experte


Anmeldungsdatum: 04.07.2007
Beiträge: 504

BeitragVerfasst am: 08.05.2017 09:00    Titel: Sonderzeichenproblem Antworten mit Zitat

Hallo zusammen,

eine meiner sites zeigt auf einmal alle Sonderzeichen falsch.
Ich nehme an, dass der Provider mal wieder irgendetwas ein Update verpasst hat.

Es ist eine 4.1.6 Installatiomn. Bis letzte Woche war noch alles mit den Zeichen ok.

PHP Version ist (jetzt) 5.6.30. Ich weiß nicht genau, was der Provider verändert hat (PHP-Version? Datenbank?)

Ich habe im global_header charset=iso-8859-15 stehen.
Und auch in der common.inc.php wurde

Code:
header('Content-type: text/html; charset=ISO-8859-15');


ergänzt, was in anderen Fällen (bei anderen sites) bei mir geholfen hat, dieses Mal aber leider nicht.

In den Artikeln steht z.B. anstelle eines € nur ein ?.
Wenn ich den Artikel bearbeite, kann ich zwar das ? durch ein € ersetzen (im Editor eingeben) aber beim Speichern fliegt es sofort wieder raus und wird zum ?


Was kann ich noch probieren, um das Problem zu beheben?

Ich habe das gleiche Problem jetzt innerhalb einer Woche bei 2 unterschiedlichen Providern.

Gruß,
dutch
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6979

BeitragVerfasst am: 08.05.2017 09:11    Titel: Antworten mit Zitat

Du müsstest erst mal die Seite aufrufen (kann ich ja nicht da die URL unbekannt ist, mal wieder) und schauen was der Browser für eine Codierung sieht.

Dann prüfen ob irgendwelche zuletzt geänderten Dateien auf dem Server UTF codiert sind. Hatten wir neulich erst im Forum, da wurde eine Datei mit einem Editor bearbeitet, der unbedingt UTF codieren wollte.

edit: auf einer Deiner Seiten habe ich die UTF-8+ (also mit BOM) Codierung gefunden. Da ist bestimmt eine UTF-Datei beteiligt. _cfg/db.inc.php ???

Habe es gerade mal bei mir per db.inc.php provoziert und konnte das Verhalten reproduzieren.

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
dutch
ConPresso-Experte


Anmeldungsdatum: 04.07.2007
Beiträge: 504

BeitragVerfasst am: 08.05.2017 09:25    Titel: Antworten mit Zitat

Hallo Markus,

eine Seite mit einigen Sonderzeichenfehlern wäre:
http://www.ebgnoordholland.nl/cms/_haarlem/index.php?rubric=6

Auch im Quelltext stehen die Fragezeichen bzw. anderen 'Unsinn'-Zeichen Wink

Da ich der Einzige bin, der Zugriff über FTP hat, und ich an der Seite seit Jahren nichts getan habe, kann ich mir nicht vorstellen, dass sich da UTF codierte Dateien 'eingeschlichen' haben könnte.
Eine (von Kunden hochgeladene) entsprechende Datei im _data Verzeichnis kann so einen Fehler doch wohl eher nicht auslösen, oder? Shocked

Gruß,
dutch
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6979

BeitragVerfasst am: 08.05.2017 09:31    Titel: Antworten mit Zitat

Hm, da ist es wohl ein anderes Problem...

Muss jetzt leider erst mal weg...

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
dutch
ConPresso-Experte


Anmeldungsdatum: 04.07.2007
Beiträge: 504

BeitragVerfasst am: 08.05.2017 09:41    Titel: Antworten mit Zitat

Danke schon mal für die Hilfe.

Ich habe das Problem auch schon dem Provider (one.com) gemeldet.
Der schweigt sich aber bisher aus...

Gruß,
dutch

EDIT:
Habe gerade von one.com die Mitteilung erhalten, dass in der betreffenden Database verschiedene charsets verwendet wurden... Rolling Eyes

Meine Anfrage an one.com betraf aber eine andere cpo site (mit dem gleichen Problem). Dort ist es jetzt gelöst, darum hoffe ich, dass es jetzt auch für diese site gelöst wird. Noch eben abwarten also Wink
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mr. Magpie
ConPresso-Experte


Anmeldungsdatum: 01.01.1970
Beiträge: 994
Wohnort: Wuppertal

BeitragVerfasst am: 10.05.2017 17:12    Titel: Antworten mit Zitat

dutch hat Folgendes geschrieben:
Hallo Markus,

eine Seite mit einigen Sonderzeichenfehlern wäre:
http://www.ebgnoordholland.nl/cms/_haarlem/index.php?rubric=6

Auch im Quelltext stehen die Fragezeichen bzw. anderen 'Unsinn'-Zeichen Wink


Aufgerufen im Browser sehe ich hier im Quelltext
Code:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

_________________
Günther Ludwig, amazingBytes webdesign      

Referenzen finden Sie hier: amazingBytes webdesign - Referenzen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6979

BeitragVerfasst am: 10.05.2017 17:39    Titel: Antworten mit Zitat

Ja, lach Laughing

Da meine wohl der Serverbetreiber dass man nur UTF8 draufschreiben muss damit es UTF8 ist.

Das Problem zeigt sich dann bei http://www.ebgnoordholland.nl/cms/_admin/

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
dutch
ConPresso-Experte


Anmeldungsdatum: 04.07.2007
Beiträge: 504

BeitragVerfasst am: 11.05.2017 08:29    Titel: Antworten mit Zitat

Hi,

stimmt, ich hatte gestern zum Test einmal UTF-8 sowohl in den meta-tag als auch in der common.inc.php (anstelle des iso-force Zusatzes) eingesetzt und damit konnte ich wenigstens die Inhalte über den Editor wieder speichern.
Wenn ich also ein € Zeichen eingebe und speichere, bleibt es auch ein € und wird nicht zum ?

Leider verhaut diese Anpassung (logischerweise) andere Teile der site... Rolling Eyes

Ich habe in der Datenbank nachgeschaut und dort steht überall UTF-8, was ja scheinbar auch der Standard ist.

Inzwischen habe ich im meta-tag und der common.inc.php wieder iso eingesetzt. Womit ich wieder am Anfang wäre... Laughing

@Markus
Wie kann ich denn feststellen, ob eine Datei ISO oder UTF-8 kodiert ist?
Ich bearbeite meine Dateien schon seit Jahren mit den gleichen Programmen und im speziellen Fall wurde auch an den CPO Dateinen schon länger nichts mehr verändert...


Und zum Schluss noch einmal meine alte Lieblingsfrage zum Thema, da ich mich nicht zum ersten Mal damit herumärgere:
WARUM benötigt ConPresso eigentlich iso-8859-1 und nicht utf-8 wie scheinbar der Rest der Welt??? *jammer*

Gruß,
dutch
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mr. Magpie
ConPresso-Experte


Anmeldungsdatum: 01.01.1970
Beiträge: 994
Wohnort: Wuppertal

BeitragVerfasst am: 11.05.2017 11:36    Titel: Antworten mit Zitat

dutch hat Folgendes geschrieben:
Und zum Schluss noch einmal meine alte Lieblingsfrage zum Thema, da ich mich nicht zum ersten Mal damit herumärgere:
WARUM benötigt ConPresso eigentlich iso-8859-1 und nicht utf-8 wie scheinbar der Rest der Welt??? *jammer*


Meine Meinung? Weil die Entwickler von ConPresso es bisher versäumt haben oder die Ressourcen nicht aufbringen können/konnten, ConPresso auf Multibyte-Funktionen umzustellen.
Natürlich fehlt auch eine breitere Modul-Entwicklergemeinde, die ihre Module auf UTF-8 umstellt.

_________________
Günther Ludwig, amazingBytes webdesign      

Referenzen finden Sie hier: amazingBytes webdesign - Referenzen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6979

BeitragVerfasst am: 11.05.2017 18:32    Titel: Antworten mit Zitat

Balu hat hier schon mehrfach drüber referiert, z.B.
http://community.conpresso.de/viewtopic.php?p=25486#25486
http://community.conpresso.de/viewtopic.php?p=27325#27325

Einige PHP-Funktionen sind wohl nicht UTF-8 kompatibel und die Standard-Codierung von mySQL ist auch latin.
Ich hatte ja auch schon mal eine komplette Umstellung auf UTF-8 probiert und bin an den massiven Problemen gescheitert.
Andere Systeme erstellen halt eine Schnittstelle zu den verschiedenen PHP- bzw. mySQL-Versionen und auch zu anderen Datenbanken.
Aber eigentlich ist die Nutzung von iso-8859-1 doch gar kein Problem. Bei allen bekannten Providern sind die Systeme doch entsprechend konfiguriert. Meist gibt es Probleme wenn ein semiprofessioneller Serverbetreiber (z.B. bei Hochschulen) unbedingt seinen Kopf durchsetzen muss.
Da hilft dann ein sofortiger Providerwechsel, denn so billig kann der gar nicht sein dass man sich drangsalieren lassen muss...

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6979

BeitragVerfasst am: 11.05.2017 18:42    Titel: Antworten mit Zitat

dutch hat Folgendes geschrieben:
@Markus
Wie kann ich denn feststellen, ob eine Datei ISO oder UTF-8 kodiert ist?


Textditoren wie EditPlus Notepad++ und andere zeigen das an.
Und im Browser kann man auch die Codierung ablesen.





codierung1.jpg
Klicken für Originalbild! codierung1.jpg (164.41KB) - 20 mal angeklickt



codierung2.jpg
Klicken für Originalbild! codierung2.jpg (166.35KB) - 20 mal angeklickt



codierung3.jpg
Klicken für Originalbild! codierung3.jpg (80.29KB) - 21 mal angeklickt



_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
dutch
ConPresso-Experte


Anmeldungsdatum: 04.07.2007
Beiträge: 504

BeitragVerfasst am: 12.05.2017 13:43    Titel: Antworten mit Zitat

Hi,

danke für die Antworten.
NotePad++ zeigt mir für (fast) alle cpo Dateien UTF-8 an, auch bei den frisch von der ConPresso site heruntergeladenen originalen Dateien.

Ich habe eine ganze Reihe Dateien in Notepad++ geöffnet und nur bei buildpage.inc.php und secure.php wurde ANSI Kodierung angezeigt.

Inzwischen habe ich aber auch gemerkt, dass ich die falsche Datenbank auf Kodierung kontrolliert hatte... Ich Dummbeutel!

Jetzt die richtige kontrolliert und siehe da: alle Tabellen sind mit latin1_swedish_ci (warum auch immer) aber ganz unten steht dann doch uft8_general_ci

Liegt hier dann vermutlich das Problem?

Gruß,
dutch





database.jpg
Klicken für Originalbild! database.jpg (268.29KB) - 19 mal angeklickt


Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6979

BeitragVerfasst am: 12.05.2017 14:00    Titel: Antworten mit Zitat

Schau mal ob bei Notepad++ irgendeine Einstellung dafür sorgt, dass Dateien zwangsweise auf UTF8 umcodiert werden.
Weiß nicht mehr ob das der Grund ist warum ich nur mit EditPlus arbeite.

Dass die Tabellen in latin sind ist ok.

Du kannst ja mal in phpMyAdmin via Operationen die Kollation der Datenbank selbst umstellen.

Auf neueren Server läuft bei mir alles in der Datenbank auf UTF8 ohne dass dies nachteilig für ConPresso wäre.

Du könntest man die beiliegende _include/db_mysql.inc.php testen, die stellt auch die Verbindung zwangsweise auf ISO.





db_mysql.inc.zip - 1.92 KB
19 mal


_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
dutch
ConPresso-Experte


Anmeldungsdatum: 04.07.2007
Beiträge: 504

BeitragVerfasst am: 12.05.2017 14:10    Titel: Antworten mit Zitat

Hi Markus,

danke für die Datei.
Ich habe aber noch eine Anfrage bei one.com laufen, ob die die Datenbank nicht auch anpassen können, so wie bei der anderen site, bei der es jetzt wieder läuft. Dort haben sie auch alles auf utf-8 umgestellt und funktioniert wunderbar.

Die db Datei probiere ich aber dann gerne aus, wenn die Anfrage durch ist!

Wenn Notepad++ alles zwangsweise auf UTF-8 umkodieren würde, müssten doch auch die beiden Dateien, die auf ANSI standen, umkodiert sein, oder gibt es Dateien, die sich dagegen erfolgreich widersetzen? Cool
Die Notepad++ Einstellungen stehen hier unten.

Gruß,
dutch


EDIT:
Habe gerade in den Einstellungen von Notepad++ noch die Stelle gefunden unter "New document" wo man einen Haken setzen kann bei 'ANSI codierung ignorieren'.
Wenn ich den Haken rausnehme, sind die CPO Dateien dann auch alle ANSI Wink
Auch die db.inc.php der betreffenden site





notepad++.jpg
Klicken für Originalbild! notepad++.jpg (30.85KB) - 19 mal angeklickt


Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 6979

BeitragVerfasst am: 12.05.2017 16:02    Titel: Antworten mit Zitat

Ich meine diese Einstellung (siehe Anlage).

Das muss auf ANSI stehen oder zumindest NICHT auf Umwandlung von ANSI-Dateien beim Öffnen!





notepadpp.jpg
Klicken für Originalbild! notepadpp.jpg (55.09KB) - 21 mal angeklickt



_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7


Zuletzt bearbeitet von MarkusR am 12.05.2017 17:42, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neue Antwort erstellen    ConPresso Community Foren-Übersicht -> laufender Betrieb ConPresso 4 Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen