Deus F (noreg): Zeichencodierungs-Fuckup

Beitrag lesen

Guten Morgen,
ich bin nicht sicher ob die Kategorie "Datenbank" korrekt ist, denn möglicherweise ist es auch ein HTTP-Problem oder ein Browser-Problem oder gar ein HTML-Problem.

Ich habe nämlich Schwierigkeiten Umlaute aus einem Formular in meine Datenbank und zurück zu bringen.

Zu den Einzelheiten:
Ich verwende PHP um eine mySQL-Datenbank anzusteuern und (in der Regel) HTML5 zu erzeugen.
Alle meine PHP-Dateien sind UTF8-codiert ohne BOM.
Alle meine Ausgaben werden ebenfalls als UTF-8 ausgeliefert (jede Seite die Ausgaben erzeugt beginnt mit header('Content-Type: text/html; charset=utf-8'); und nahezu jede Ausgabe beginnt mit <!DOCTYPE html><html><head><title></title><style></style></head>(...))
Mein Eingabeformular ist so definiert: <form action="./backend.php" method="post">
mein SQL wird (beispielsweise) so erzeugt:

$sql_query = "UPDATE `".$db_data['database']."`.`Tabellenname` SET  
`artist` =  '".mysql_real_escape_string($_REQUEST['artist'])."',  
`translator` =  '".mysql_real_escape_string($_REQUEST['translator'])."',  
`title` =  '".mysql_real_escape_string($_REQUEST['title'])."',  
WHERE  `jpbms_comics`.`cid` =".(int)$_REQUEST['mycid'].";";

und dann mit mysql_query($sql_query); übergeben.

Wenn in dem Request Umlaute vorkommen (und ich nehme an auch andere Sonderzeichen, "&" funktioniert aber z.B.) dann wird es in unerwünschter Weise abgespeichert. Kippe ich in "translator" den String "Übersetzer" (im Formular) so...
...gebe ich den Query einfach im HTML aus wird er korrekt angezeigt.
...schaue ich mir die Daten mit phpMyAdmin an steht da Ãœbersetzer
...lese ich sie mit meinem PHP aus der Datenbank wieder aus und schicke sie ins HTML (z.B. so: echo '<input type="text" name="translator" id="translator" value="'.$sql_array['translator'].'" />'; werden sie wieder korrekt angezeigt.

Schreibe ich mit PMA in die Datenbank "Übersetzer" (oder kopiere gar den ausgegebenen Query von oben ins PMA) so...
...erscheint mit dem gleichen Code wie oben "�bersetzer" im HTML.
...sieht es im PMA korrekt aus.

Soweit ich das sehe ist das alles nicht soooo tragisch, weil die Codierung scheinbar hin in die DB und zurück durchaus funktioniert.
Problematisch könnte es werden wenn man irgendwas auf der Datenbank direkt ändert (warum auch immer, aber kann ja mal nötig sein), dann kann man keine Umlaute verwenden oder muss sich irgendwie die entsprechenden Zeichen erst zusammen kramen.

Also ich habe irgendwo Zeichensatz-Probleme aber ich weiß nicht wo. Kann mir jemand sagen wo ich suchen kann/soll. Oder kann aus den Angaben gar erkennen was bei mir schief läuft?

Dankeschön und falls man sich nicht mehr liest: Guten Rutsch!