MySQL führt spontane Zeichensatzkonvertierungen zu etwas durch, das als Verbindung bezeichnet wird Zeichensatz . Sie können diesen Zeichensatz mit der SQL-Anweisung
angebenSET NAMES utf8
oder verwenden Sie eine bestimmte API-Funktion wie mysql_set_charset() :
mysql_set_charset("utf8", $conn);
Wenn dies richtig gemacht wird, müssen keine Funktionen wie utf8_encode() und utf8_decode() verwendet werden.
Außerdem müssen Sie sicherstellen, dass der Browser die gleiche Codierung verwendet. Dies geschieht normalerweise mit einem einfachen Header:
header('Content-type: text/html;charset=utf-8');
(Beachten Sie, dass der Zeichensatz utf-8 heißt im Browser aber utf8 in MySQL.)
In den meisten Fällen sind der Verbindungszeichensatz und der Webzeichensatz die einzigen Dinge, die Sie im Auge behalten müssen. Wenn es also immer noch nicht funktioniert, haben Sie wahrscheinlich etwas anderes falsch gemacht. Experimentieren Sie ein wenig damit, es dauert normalerweise eine Weile, bis Sie es vollständig verstehen.