dedlfix: UTF-8 wird nicht korrekt in mysql gespeichert

Beitrag lesen

echo $begrüßung;

Hast du auch für die Verbindung mit der Datenbank ausgehandelt, dass UTF-8 verwendet werden soll?
Andernfalls kodiert MySQL die Daten bei Ein- und Ausgabe selber fröhlich hin und her.

Das fröhliche Hin- und Her-Kodieren macht MySQL auch mit ausgehandelter Verbindungskodierung. MySQL kodiert bei zwischen zwei unterschiedlichen Kodierungen (zum Beispiel Verbindungskodierung ist eine andere als die Feldkodierung) immer um. Das Problem ist meist, dass die Default-Kodierungskonfiguration nicht mit der vom Anwender verwendeten Kodierung übereinstimmt und MySQL dann die Daten gemäß einer anderen Kodierung interpretiert, was in die Hose geht.

Wenn man keinen Einfluss auf die Datenbank-Abstraktionsschicht hat, hier Propel, sollte man erst einmal prüfen, ob da alles richtig läuft. Dazu kann man sich im MySQL-Server das Query-Log einschalten und dort erst einmal den Verkehr analysieren. Ansonsten wären konkrete Angaben interessant, um konkret zu vermuten, in welcher Weise eine ungewünschte Umkodierung stattfindet. Was also zeigt der phpMyAdmin an?

echo "$verabschiedung $name";