Ich konnte das folgendermaßen lösen:
utf8_general_ci
sein
utf8_general_ci
sein
header('Content-Type: text/html; charset=utf-8');
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
mysql_query("SET NAMES 'utf8'");
Nach viel Arbeit habe ich eine Lösung gefunden, die immer funktioniert ..: ohne SET_NAMES.
Nachdem Sie in der Datei conn.inc.php
eine Datenbank ausgewählt und eine Verbindung hergestellt haben, führen Sie Folgendes aus:
... und im HTML immer charset utf-8;
Das hat es für mich gelöst. Es ist nicht nötig, set_names()
zu verwenden, was in Ordnung ist, aber es hat mich sehr geärgert.
Sie können das PDO in Ihrem Code wie folgt verwenden:
%Vor%Stellen Sie sicher, dass Sie die einfachen Anführungszeichen um 'utf8' herum einfügen.
Um Nicht-ASCII-Zeichen in einer Datenbankspalte zu speichern, müssen Sie diese Spalte mit einem bestimmten Zeichensatz definieren. Sie können einen Zeichensatz auf drei Ebenen angeben: Datenbank, Tabelle und Spalte. Zum Beispiel:
%Vor%In meinem Fall habe ich die DB von einem Dump erstellt, und dieser Befehl löst es:
%Vor%