Wunderwaffe SET NAMES, SET CHARACTER SET

Nur zwei eine Zeilen Code genügt, um Herr über das Chaos der Zeichencodierung eines PHP-MySQL-Projektes zu werden. Falls jemand von euch auch mal vor dem Problem stehen sollte, dass Umlaute trotz aller Experimente die „Datenbank-Kollation“ und „charset“ auf UTF-8 umzustellen nicht wie gewünscht dargestellt bzw. abgelegt werden, dann spart euch erstmal den Versuch durch wildes Ersetzen der „krummen“ Zeichen das Problem in den Griff zu bekommen. Versucht erst einmal folgende zwei Zeilen Code in eure Datenbank-Verbindung einzutragen:

mysql_query("SET NAMES 'utf8'");

UPDATE: Im Gesamtzusammenhang könnte die Datenbankverbindung dann so aussehen:

$con = mysql_connect("localhost","user","password");
 
if (!$con) {
  die('Could not connect: ' . mysql_error());
}
 
mysql_select_db("database", $con);
mysql_query("SET NAMES 'utf8'");
// mysql_query("SET CHARACTER SET 'utf8'");

Bei meinem Problem hat es Wunder gewirkt. Warum bin ich nicht schon viel früher darauf gestoßen? Hier noch der Link zur offiziellen Doku  SET NAMES, SET CHARACTER SET P.S. Danke an Oliver, damit hat sich der Aufwand nochmals um eine Zeile reduziert 🙂