dedlfix: Umlaute in MySQL-Textfield speichern

Beitrag lesen

echo $begrüßung;

Wenn ich folgendes mysql-code ausführen lasse wird in der mysql-tabelle nur "Die Umlaute " gespeichert, warum? :-/
"INSERT INTO test (blabla) VALUES ('Die Umlaute äöü und ß funktionieren nicht');"

Woher weißt du, was in der MySQL-Tabelle gespeichert wird? So ein MySQL-Server sieht für Anwender wie eine Blackbox aus. Wenn du deren Inhalt prüfen willst, musst du also eine Abfrage senden und deren Ergebnisse irgendwie sichtbar machen. Wie geschieht das in deinem Fall konkret?

Bei einem MySQL-Server sind zwei der 10 verschiedenartigen Kodierungsangaben besonders wichtig. Die Angabe der Kodierung der Felder legt fest, welche Zeichen überhaupt abgelegt werden können. Die Angabe einer Kodierung für die aktuelle Client-Verbindung[*] legt fest, wie vom MySQL-Server die übergebenen Daten interpretiert werden, und wie er die zurückkommenden Daten liefern soll. Gegebenenfalls werden für nicht explizit angegebene Kodierungen Defaultwerte verwendet. Auch versucht MySQL zwischen unterschiedlichen Kodierungen umzukodieren, was aber prinzipbedingt nicht in jedem Fall verlustlos möglich ist.

[*] Zusammengefasst in SET NAMES sind das eigentlich schon 3 der 10 Arten.

echo "$verabschiedung $name";