Heim >Backend-Entwicklung >PHP-Problem >PHP schreibt verstümmelte Zeichen in die Datenbank
Fast alle PHP-Entwickler sind auf das Problem verstümmelter Zeichen gestoßen. Im Folgenden stellen wir hauptsächlich die Lösung für verstümmelte Zeichen beim Herstellen einer Verbindung zur PHP-MySQL-Datenbank vor. „utf8_general_ci“ oder führen Sie die Anweisung aus:
CREATE DATABASE `dbname` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Beim Erstellen einer Datentabelle: Wenn das Feld Chinesisch speichert, müssen Sie „Organisation“ auf „utf8_general_ci“ setzen, wenn das Feld Englisch oder Zahlen speichert Die Standardeinstellung ist in Ordnung.
Die entsprechende SQL-Anweisung, zum Beispiel: CREATE TABLE `test` (
`id` INT NOT NULL ,
`name` VARCHAR( 10 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM ;
2. Verwenden Sie PHP, um die Datenbank zu lesen und zu schreiben
Nachdem Sie eine Verbindung zur Datenbank hergestellt haben,
$connection = mysqli_connect($host_name, $host_user, $host_pass);join:
mysqli_query("set character set 'utf8'");//读库
mysqli_query("set names 'utf8'");//写库
kann die MYSQL-Datenbank normal lesen und schreiben.
Die mit appserv-win32-2.5.10 erstellte Umgebung verwendet bei der Installation dieses Pakets die Standard-UTF8-Codierung.
$conn = mysqli_connect("$host","$user","$password"); mysqli_query("SET NAMES 'UTF8'"); mysqli_select_db("$database",$conn);Achten Sie dann beim Erstellen der Seite auf diesen Satz:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
mysqli_query("SET NAMES 'GBK'");
, dann sollte sich die Seite auch entsprechend ändern:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
Der obige Inhalt dient nur als Referenz!
Empfohlenes Tutorial:
Das obige ist der detaillierte Inhalt vonPHP schreibt verstümmelte Zeichen in die Datenbank. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!