dedlfix: ... und da war es wieder, das Problem mit den Zeichensätzen ;(

Beitrag lesen

echo $begrüßung;

Was konkret lässt dich [an SET NAMES] zweifeln?
Dass ich es nicht verwende, weil ich das Umfeld in der Regel so anpasse, dass die Kodierung überall gleich ist.
Somit ist die Angabe dann überflüssig.

Dann musst du dir auch die Einstellung character-set-server auf dem MySQL-Server selbst setzen können.

Das sollte auch bei Dritt-Anbietern möglich sein weil ich nicht glaube, dass irgendwer Webspace mit PHP und DB anbietet und dabei 2 oder gar 3 verschiedene Kodierungen einstellt.

Webspace-Anbieter haben in der Regel nicht für jeden Kunden einen eigenen MySQL-Server, den sich dieser selbst verwalten könnte sondern einen für viele, der meist unter dem Default-Wert Latin1 läuft.

Ich kann auch guten Gewissens auf UTF8 verzichten wenn der Server auf ISO-8859... eingestellt ist.
Oder denke ich grad in die falsche Richtung?

Es ist möglich, einem MySQL-Server, der auf der Client-Verbindung von Latin1-kodierten Daten ausgeht, UTF-8-kodierte Daten zu senden. Man bekommt sich auch so wieder zurück. Nur kann man dann keine Funktionalität nutzen, die auf korrekte Zeichen angewiesen ist. Das fängt bei der Sortierung an, betrifft Längenermittlungen und Stringfunktionen und hört bei der Größenangabe der Felder nicht auf. VARCHAR(10) speichert beispielsweise nur 9 Zeichen, wenn eins davon ein UTF-8-Umlaut ist. Außerdem bekommt man dann genau die Probleme des Ausgangspostings, wenn man mit korrekt arbeitenden Tools wie dem allseits beliebten phpMyAdmin auf seinen Datenbestand zugreifen möchte.

echo "$verabschiedung $name";