Home >Topics >php mysql >Solution to php mysql Chinese garbled problem

Solution to php mysql Chinese garbled problem

藏色散人
藏色散人Original
2020-11-04 09:14:173850browse

php Mysql Chinese garbled solution: 1. Set the encoding for the head of the web page file; 2. Save the PHP page using utf-8 encoding when saving; 3. When creating a new database in MYSQL, select UTF for the database -8 encoding.

Solution to php mysql Chinese garbled problem

Recommended: "PHP Video Tutorial"

Solutions to common php and mysql Chinese garbled problems

Garbled code problem: Chinese characters in the database are normal, and the web page is not garbled

Using PHPmyAdmin to operate the MySQL database Chinese characters display normally, but when using PHP web pages to display MySQL data, all Chinese characters turn into ? signs.

Symptoms:

It is normal to input Chinese characters using PHPmyAdmin, but when the PHP web page displays MySQL data, the Chinese characters become ? signs, and there are as many ? signs as there are Chinese characters.

Reason:

There is no code in the PHP web page to tell MySQL what character set to use to output Chinese characters.

Solution:

1. Web page file head setting encoding 2191f8d8e989077f7723d4976d3b973b

2. When saving the PHP page, use UTF-8 encoding. You can use Notepad or convertz802 to convert the file.

3. When creating a new database in MYSQL, select UTF-8 encoding for the database. The character set is set to utf-8_unicode_ci (Unicode (multi-language), case-insensitive), and the collation of the table 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

4. When connecting to the database in PHP, that is, add

//设置数据的字符集utf-8
mysql_query("set names 'utf8' ");
mysql_query("set character_set_client=utf8");
mysql_query("set character_set_results=utf8");

after mysql_connect(). Note that it is utf8, not utf-8.

The above four points can achieve utf-8 encoding for the entire site, and there will be no Chinese garbled characters in the database.

Garbled code problem: Database garbled code

An error occurred when entering data with PHPmyAdmin, the input is not allowed or garbled code appears

Solution:

This is a setting problem . Please install the latest version of PHPmyAdmin or Appserv, open PHPmyAdmin, MySQL character set: UTF-8 Unicode (utf8); MySQL connection proofreading should be utf8_unicode_ci; when creating a new database, please also select utf8_unicode_ci in the finishing column. It is also best to use UTF-8 as the web page character set. UTF-8 is an international standard encoding and a trend.

Garbled code problem: local normal, remote garbled code

The MySQL data table developed on this machine is normal when tested on this machine, but problems occur when uploading using PHPmyAdmin provided by the website space provider ,upload failed. Especially using foreign PHP space.

Solution:

First check the PHPmyAdmin character set settings provided by the website space provider, and make sure that the data table you build has the same encoding as that of the service provider. MySQL does not support gb2312 abroad, and even the latest version of Apache does not support gb2312. If it is because the encoding is not uniform, you can rebuild the data table, of course using the international standard UTF8.

The above is the detailed content of Solution to php mysql Chinese garbled problem. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn