Heim > Artikel > Backend-Entwicklung > So lösen Sie das verstümmelte Problem der PHP-Datenbank
Lösung für das verstümmelte Problem der PHP-Datenbank: 1. Legen Sie die Codierung utf8 im Kopf der Webseitendatei fest. 2. Verwenden Sie die Codierung utf8, wenn Sie die PHP-Seite speichern. 4. Wählen Sie die Codierung UTF8. Übergeben Sie „mysql_query( „setnamen ‚utf8‘“);“ Legen Sie einfach den Zeichensatz fest.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, Dell G3-Computer.
Wie löst man das verstümmelte Problem der PHP-Datenbank?
Verstümmelter Code Problem 1: Wenn Sie PHPmyAdmin zum Betreiben der MySQL-Datenbank verwenden, werden die chinesischen Zeichen normal angezeigt, aber wenn Sie die PHP-Webseite zum Anzeigen der MySQL-Daten verwenden, werden alle chinesischen Zeichen zu ?-Symbolen.
Symptom: Es ist normal, chinesische Zeichen mit PHPmyAdmin einzugeben, aber wenn die PHP-Webseite MySQL-Daten anzeigt, werden die chinesischen Zeichen zu ?-Zeichen, und es gibt so viele ?-Zeichen.
Grund: Auf der PHP-Webseite gibt es keinen Code, der MySQL mitteilt, in welchem Zeichensatz chinesische Zeichen ausgegeben werden sollen.
Lösung:
1. Kodierung des Webseitendateikopfes c61943918c31c76b122fea1e39ab3992
2.PHP-Seite Verwenden Sie zum Speichern die UTF-8-Kodierung. Sie können Notepad oder Convertz802 verwenden, um die Datei zu konvertieren.
3 Beim Erstellen einer neuen Datenbank in MYSQL wählt die Datenbank die UTF-8-Kodierung aus und der Zeichensatz ist auf utf-8_unicode_ci eingestellt (Unicode (mehrsprachig)), Groß- und Kleinschreibung wird nicht beachtet),
Die Sortierung der Tabelle in der Bibliothek ist auf utf-8_general_ci
Die Sortierung jedes Felds in der Tabelle ist auf utf-8_general_ci
4 eingestellt. Wenn PHP eine Verbindung zur Datenbank herstellt, fügen Sie
//设置数据的字符集utf-8 mysql_query("set names 'utf8' "); mysql_query("set character_set_client=utf8"); mysql_query("set character_set_results=utf8");
nach mysql_connect() hinzu. Beachten Sie, dass es utf8 und nicht utf-8 ist.
Wenn Ihre Webseitenkodierung gb2312 ist, dann SET NAMES GB2312. Der Herausgeber empfiehlt jedoch dringend, dass die Webseitenkodierung, der MySQL-Datentabellen-Zeichensatz und PHPmyAdmin alle UTF-8 verwenden.
Mit den oben genannten vier Punkten kann eine UTF-8-Kodierung für die gesamte Website erreicht werden, und die Datenbank enthält keine verstümmelten chinesischen Zeichen.
Problem mit verstümmelten Zeichen 2: Bei der Dateneingabe mit PHPmyAdmin ist ein Fehler aufgetreten, die Eingabe ist nicht zulässig oder es werden verstümmelte Zeichen angezeigt
Lösung: Dies ist ein Einstellungsproblem. Bitte installieren Sie die neueste Version von PHPmyAdmin oder Appserv, öffnen Sie PHPmyAdmin, MySQL-Zeichensatz: UTF-8 Unicode (utf8); MySQL-Verbindungskorrektur sollte utf8_unicode_ci sein; wählen Sie bitte auch utf8_unicode_ci für die Abschlussspalte aus. Am besten ist es auch, UTF-8 als Zeichensatz für die Webseite zu verwenden. UTF-8 ist eine internationale Standardkodierung und ein Trend.
Unverständliches Codeproblem 3: Die auf diesem Computer entwickelte MySQL-Datentabelle ist beim Testen auf diesem Computer normal. Beim Hochladen mit PHPmyAdmin, das vom Website-Space-Anbieter bereitgestellt wird, tritt jedoch ein Problem auf und der Upload schlägt fehl. Insbesondere die Verwendung von fremdem PHP-Speicherplatz.
Lösung: Überprüfen Sie zunächst die vom Website-Space-Anbieter bereitgestellten PHPmyAdmin-Zeichensatzeinstellungen, um sicherzustellen, dass die von Ihnen erstellte Datentabelle dieselbe Codierung aufweist wie die des Dienstanbieters. MySQL unterstützt gb2312 im Ausland nicht, und selbst die neueste Version von Apache unterstützt gb2312 nicht. Wenn die Kodierung nicht einheitlich ist, können Sie die Datentabelle neu erstellen, natürlich mit dem internationalen Standard UTF8.
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonSo lösen Sie das verstümmelte Problem der PHP-Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!