Seite 1 von 1
Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Di 31. Jan 2017, 12:14
von steve04
Hallo,
wir möchten in einem Mandanten unter Contenido 4.9.8, dessen einzige Sprache auf deutsch und Zeichensatz utf-8 eingestellt ist, einzelne Wörter in hebräischen Zeichen einfügen.
Es funktioniert leider nicht so recht. Zunächst hatten wir tinymce in Verdacht. Aber wenn ich die Zeichen z.b. in das Title-Tag eines Artikels eingebe, wo der tinymce keine Rolle spielt, werden die hebräischen Zeichen auch nur als Fragezeichen angezeigt.
Wenn ich dagegen ein Euro-Zeichen eingebe, wird das korrekt angezeigt; das dürfte m.E. der Nachweis sein, dass wir es hier mit utf-8 zu tun haben. Wir haben in den Mandanten-Einstellungen auch den Parameter
eingefügt. Dadurch wird das Euro-Zeichen nicht in eine HTML-Entity umgewandelt, sondern wirklich als € im Quell-Text belassen. Nur die hebräischen Zeichen machen es nicht. Wenn ich die speichere und den Artikel erneut aufrufe, stehen da nur Fragezeichen, in den Formularen Artikel-Eigenschaften und auch im Quell-Text des Artikels im Frontend.
Der Datenbank-Server ist auf utf-8 eingestellt, Kollation auf utf8_general_ci.
Hat jemand eine Idee?
Vielen Dank!
Stephan
Re: Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Di 31. Jan 2017, 14:50
von Faar
Wahrscheinlich ist in "Sprachen" ein westeuropäischer Zeichensatz (z.B. Windows-1252) eingestellt und nicht utf-8.
https://de.wikipedia.org/wiki/ISO_8859-1
Das könnte das Eurozeichen € erklären und das Fehlen der hebräischen Schriftzeichen.
Aber es könnte auch schlicht daran liegen, dass die angegebene Schrift im Browser keine hebräischen Schriftzeichen hat.
Re: Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Mi 1. Feb 2017, 10:43
von rethus
Check mal wie von faar empfohlen deine Spracheinstellungen im Contenido-Backend, und schau, ob in der config.php UTF-8 für die DB gesetzt wurde:
Code: Alles auswählen
$cfg['db'] = array(
'connection' => array(
...
'charset' => 'utf8', // (string) The charset of connection to database
)
Hast du auch schon die HTML-Schreibweise versucht: HTML dezimal: צ (
https://www.key-shortcut.com/schriftsys ... -alphabet/)
Denk aber bitte daran, das Basteleien an der Sprache sehr weitreichende Auswirkungen haben können, daher immer Backup zuvor machen.
Ist extrem mühsam eine DB zu reparieren, in der gemischte Zeichensätze gespeichert wurden

Re: Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Mi 1. Feb 2017, 16:56
von steve04
Vielen Dank für die Vorschläge! Leider hat sich noch nichts ergeben:
- Die Sprachen in dieser Contenido-Installation sind durchweg auf utf-8 eingestellt.
- In der config.php ist der Charset für die Datenbank-Verbindung auch auf utf-8 gesetzt.
- Die Datenbank selbst ist auch auf utf-8 eingestellt.
... und trotzdem ist das Ergebnis nicht wie erwartet.
Was ich jetzt noch versuchen werde, ist die HTML-Schreibweise. Mal schaun.
Danke,
Stephan
Re: Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Mi 1. Feb 2017, 23:40
von homtata
Ist das eine Updateversion von 4.8 oder eine frisch installierte 4.9? Wurde vorher schonmal gesagt, aber die reine Datenbankverbindung in utf8 reicht nicht. Es muss auch jede TABELLE auf utf8 stehen sowie die nötigen Felder (Spalten) in der Tabelle. In der 4.8 stand fast alles auf Tabellen- und Feldebene auf latin-irgendwas.
Mach mal einen Datenbankdump mit Struktur und allem und suche nach "latin" - wenn du da in den Tabellendefinitionen auf Einträge triffst, stimmts noch nicht und wird auch nicht klappen bzw. beim nächsten Update dann schlimmstenfalls die Felder wieder zurücksetzen, falls die Tabelle selbst nicht utf8 ist.
Re: Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Mi 8. Feb 2017, 11:04
von steve04
Danke, das scheint der Knackpunkt zu sein:
Code: Alles auswählen
CREATE TABLE IF NOT EXISTS `con_art` (
`idart` int(11) NOT NULL AUTO_INCREMENT,
`idclient` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`idart`),
KEY `idclient` (`idclient`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1804 ;
Was mich irritiert: Es war eine saubere 4.9.x-Installation ohne Vorgeschichte und ich bin mir sicher, dass ich bei der Installation utf-8 gewählt habe.
Gibt es eine Chance, die Tabellen nachträglich umzukonfigurieren?
Danke,
Stephan
Re: Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Mi 8. Feb 2017, 11:32
von homtata
Ja

du machst am besten einen Dump, sicherst den, und überarbeitest die Kopie händisch. Suche nach allen latin-Vorkommen und schau dann, welche genaue utf-8-Entsprechung da jeweils hingehört. Dann den Dump wieder zurückspielen.
Wenn es nicht zuviele Treffer sind, lässt sich das normalerweise pro Tabelle in phpmyadmin auch über die Eigenschaften der jeweiligen Tabelle einstellen.
LG
Re: Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Do 9. Feb 2017, 10:10
von frederic.schneider_4fb
steve04 hat geschrieben:Danke, das scheint der Knackpunkt zu sein:
Code: Alles auswählen
CREATE TABLE IF NOT EXISTS `con_art` (
`idart` int(11) NOT NULL AUTO_INCREMENT,
`idclient` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`idart`),
KEY `idclient` (`idclient`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1804 ;
Was mich irritiert: Es war eine saubere 4.9.x-Installation ohne Vorgeschichte und ich bin mir sicher, dass ich bei der Installation utf-8 gewählt habe.
Gibt es eine Chance, die Tabellen nachträglich umzukonfigurieren?
Danke,
Stephan
Das hast Du einer aktuellen (!) Installation von CONTENIDO 4.9? Ohne vorherige Upgrades älterer 4.8- oder 4.9-Versionen?
Re: Hebräische Zeichen in deutschspr. Mandanten
Verfasst: Do 9. Feb 2017, 14:04
von steve04
Ja, eine 4.9.8 und wir haben daneben auf dem selben Server mit demselben Apache und demselben MySQL-Server eine 4.9.12 mit Demo-Inhalten zu Testzwecken. Dort haben wir das beschriebene Phänomen auch nachvollziehen können.
Wenn ich die obigen MySQL-Anweisungen ändere
- anderer Tabellen-Name
- charset auf utf8 setzen
wird über phpMyAdmin auch tatsächlich eine Tabelle mit utf8-Kodierung angelegt.
Stephan