echo $begrüßung;
Aus einer MySQL4-Datenbank habe ich mir einen dump rausgelassen.
Diese Angabe ist nicht genau genug. MySQL 4.0 hatte nur ein sehr eingeschränktes Zeichensatzmanagement. Das wurde mit Version 4.1 umgestellt und stark erweitert.
also wie phpmyadmin das macht, weiss ich nicht, da hab ich es rausgelassen, weil der Originaldump bei jedem 2. Query nen SQL-Error gebracht hat...
Nach meinem Kenntnisstand erzeugt der phpMyAdmin in neueren Versionen immer einen UTF-8-kodierten Dump. Auch dein Fehlerbild bestätigt das, denn es zeigt UTF-8-kodierte Zeichen, die als ISO-8859-1 interpretiert wurden.
Diese Kodierung muss man beim Importieren ebenfalls wieder angeben. Darauf hast du offensichtlich nicht geachtet und den Import als ISO-8859-1 bzw. Latin1 durchgeführt.
Am einfachsten ist es, wenn du den Import wiederholst und dabei UTF-8 als Kodierung angibst. Die Daten im System umzuschreiben ist zwar möglich aber nicht ganz einfach. Auf alle Fälle solltest du dir eine Kopie der Datenbankdateien anlegen, nicht dass am Ende der Datenbestand unwiederherstellbar vermurkst ist.
Zur Vorgehensweise siehe </archiv/2006/9/t136745/#m888404>.
Es kann aber auch sein, dass die Daten im DBMS in der richtigen Kodierung stehen, du aber beim Abfragen per Script nicht beachtet hast, dass das DBMS so eingestellt ist, dass es per Default UTF-8 spricht. In dem Fall wären die Umlaute im phpMyAdmin richtig zu sehen, und du musst den Hinweis beachten, der bereits auf der Einstiegsseite des Kapitels Character Set Support zu finden ist.
echo "$verabschiedung $name";