Da vermutlich keine Verbindungskodierung eingestellt wurde, geht MySQL von Latin1 aus und kodiert den ankommenden Bytestrom in die Feldkodierung um. Rückwärts macht es das umgekehrt und du siehst wieder UTF-8. Normal ist das nicht, denn dabei geht dir Funktionalität (Stringfunktionen, Sortierung und Vergleiche arbeiten nicht richtig) und Spicherplatz (je ein Zeichen für jedes UTF-8-Byte) verloren. Die Folge ist unkorrektes Arbeiten und Datenverlust.
Ich habe meine db_connect.php um die letzten zwei Zeilen ergänzt:
<?php
$dbHost = "localhost";
$dbUser = "ww5231";
$dbPass = "XXXXXX";
$dbName = "urw_ww5231";
$connect = mysql_connect($dbHost, $dbUser, $dbPass) or die("keine verbindung");
$selectDB = mysql_select_db($dbName, $connect) or die ("keine datenbank");
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
?>
Seither werden Umlaute auf der Website, als auch in der DB richtig dargestellt.
Ist das denn nun so richtig?