To solve the problem of garbled characters in the PHP database, you can make the following settings:
1. Settings in the database:
1. When creating a new database in MYSQL, the database selects UTF-8 encoding and the character set is set to utf-8_unicode_ci
(Unicode (multi-language), case-insensitive). The table arrangement in the library is set to utf-8_general_ci
; The collation of each field in the table is set to utf-8_general_ci
.
2. When creating a database, specify the character type as uft8, such as:
create database db_name character set utf8;
or modify the created database to utf8 type:
alter database db_name character set utf8;
3. When creating a table, specify The character type is utf8, such as:
CREATE TABLE tb_name( id int(10) NOT NULL auto_increment, username char(34) NOT NULL , password int(56) NOT NULL, PRIMARY KEY (id) ) DEFAULT CHARSET=utf8;
or modify the created table to utf8 format:
alter table tb_name character set utf8;
or modify a field in the table to utf8 format:
alter table tb_name modify type_name varchar(50) CHARACTER SET utf8;
2. PHP connection settings, in the MySQL connection function of PHP, add the statement:
//注意此处为utf8,不要写成utf-8mysql_query("set names 'utf8'");
3. Page declaration encoding: in the HTML code xxx< /head>Inside, you can use:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>申明页面编码
4. Set the browser to utf-8 format.
5. Editor character encoding, the code document must be saved in utf-8 format.
6. If the inserted data is garbled, you can transcode the inserted data. First convert the string to utf-8 and then insert it into the database.
Recommended tutorial: PHP video tutorial
The above is the detailed content of Chinese garbled characters when php connects to mysql database. For more information, please follow other related articles on the PHP Chinese website!