Home > Article > Backend Development > Reasons and solutions for garbled characters stored in PHP Chinese information in the database
Title: Causes and solutions for garbled characters when PHP Chinese information is stored in the database
In the process of using PHP to develop websites, we often encounter problems when Chinese information is stored in the database. There is a problem with garbled characters. This problem is caused by a variety of factors, including database encoding settings, PHP encoding settings, page encoding settings, etc. In this article, we will introduce in detail the reasons why PHP Chinese information is stored in garbled databases, provide solutions, and attach specific code examples.
First, ensure that the encoding settings of the tables in the database are consistent with the encoding format of the data. The encoding format of the table can be modified to UTF-8 through the following SQL statement:
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
In the PHP file, set the encoding format to ensure that the data is not transmitted during transmission. Garbled characters will appear. You can add the following code at the beginning of the PHP file:
header('Content-Type: text/html; charset=utf-8');
Add the following meta tag at the head of the web page to specify that the encoding format of the page is UTF-8:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
The following is a simple PHP code example that demonstrates how to correctly store Chinese information into the database:
<?php // 连接数据库 $servername = "localhost"; $username = "root"; $password = ""; $dbname = "test_db"; $conn = new mysqli($servername, $username, $password, $dbname); // 设置字符编码 $conn->set_charset("utf8"); // 处理中文信息 $name = "张三"; $age = 25; // 插入数据 $sql = "INSERT INTO users (name, age) VALUES ('$name', $age)"; if ($conn->query($sql) === TRUE) { echo "新记录插入成功"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } $conn->close(); ?>
By correctly setting the database, PHP files and web pages The encoding format can effectively avoid the problem of garbled characters when Chinese information is stored in the database. Hope the above content is helpful to you!
The above is the detailed content of Reasons and solutions for garbled characters stored in PHP Chinese information in the database. For more information, please follow other related articles on the PHP Chinese website!