Für ein Kundenprojekt benötige ich die Mehrsprachigkeit auch der Kontaktformulare die mit BreezingForms erstellt wurden. Prinzipiell die Mehrsprachigkeit mit BF einfach realisierbar. Dazu gibt es auch diverse Seiten auf denen das beschrieben ist.

Bei meinen Projekt trat jedoch das Problem auf, dass beim Anlegen von Formularen mit kyrillischem (russischen) Zeichensatz schon beim Speichern der Formular die Zeichen einfach ersetzt wurden durch eine gleiche Anzahl von Fragezeichen.

Nach dem ich verschiedene erfolglose Dinge ausprobiert hatte, um die Eingabe in Russisch zu ermöglichen, blieb mir als Hoffung nur noch, dass die Ursache in der Zeichensatzeinstellung (Kollation) der Tabelle zu finden wäre.



Dazu musste ich ersteinmal die dafür verantwortliche Tabelle und Felder ausfindig machen. BreezingForms speichert diese Texte direct in seiner eigenen jos_facileforms_forms. Hier gibt es zwei Felder template_code und template_code_processed, welche den Formularaufbau umfangreich beschreiben. Bei mir wurden diese Tabellen und auch diese beiden Felder mit der Kollation "latin1_german1_ci" angelegt, welches logischerweise nicht geeignet ist, um Kyrillisch zu speichern. Nachdem ich hier utf8_general_ci eingestellt hatte, war BreezingForms in der Lage diese Zeichen zu speichern.

MySQL latin1_german1_ci zu utf8_general_ci
1
2
ALTER TABLE `jos_facileforms_forms` 
CHANGE `template_code_processed` `template_code_processed` LONGTEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL 

latin1_german1_ci

test
200
201
<?php echo $test ?>
asdf asdfasdf