


When using php to insert Chinese data into the Mysql database, the database displays garbled characters
1. I wrote php code to insert a field value with Chinese characters into the mysql database. Viewing it in phpMyadmin shows garbled characters, and viewing it in the mysql console is also garbled. I have changed the sorting rule of each field to uft8_general_ci in phpmyadmin. Direct insertion shows normal, direct insertion in mysql console also shows normal, but inserting through php is not normal. I also wrote header("Content-Type: text/html;charset=utf-8");
in php code.<code><?php header("Content-Type:text/html;charset=utf-8"); if($con=mysqli_connect('localhost','root','')){ echo '连接成功'; } else{ echo '连接失败'; } if(mysqli_select_db($con,"test")){ echo '选择数据库成功'; } else{ echo '选择数据库失败'; } $str="insert into students(name,age)values('周杰伦','23')"; if(mysqli_query($con,$str)){ echo '插入成功'; } else{ echo '插入失败'; } mysqli_close($con);//关闭数据库 ?></code>
3. Could someone please help me figure out where the problem is?
Reply content:
1. I wrote php code to insert a field value with Chinese characters into the mysql database. Viewing it in phpMyadmin shows garbled characters, and viewing it in the mysql console is also garbled. I have changed the sorting rule of each field to uft8_general_ci in phpmyadmin. Direct insertion shows normal, direct insertion in mysql console also shows normal, but inserting through php is not normal. I also wrote header("Content-Type: text/html;charset=utf-8");
in php code.<code><?php header("Content-Type:text/html;charset=utf-8"); if($con=mysqli_connect('localhost','root','')){ echo '连接成功'; } else{ echo '连接失败'; } if(mysqli_select_db($con,"test")){ echo '选择数据库成功'; } else{ echo '选择数据库失败'; } $str="insert into students(name,age)values('周杰伦','23')"; if(mysqli_query($con,$str)){ echo '插入成功'; } else{ echo '插入失败'; } mysqli_close($con);//关闭数据库 ?></code>
3. Could someone please help me figure out where the problem is?
See if your database table contains normal Chinese characters, then try to solve the problem when inserting data. Unicode format:
Make sure the database, table, and field settings are all
utf-8
Make sure the character set when connecting to the database is
utf-8
Make sure the program file is
utf-8
Make sure the configuration file of the mysql installer is set to characters
utf-8
I found the key to the problem. I tried both of the two answers below, but it didn’t work. The problem was that the mysql.ini configuration was missing a sentence of default-character-set = utf8. I installed wampserver and used this software myself. The mysql.ini of the installed mysql does not have that sentence, and if you add this sentence, you cannot add it randomly. It must be added at the location pointed out in my picture
Use show variables like 'character_set_%; to view the character encoding after modifying the ini file as shown below
You need to set mysql encoding and execute sql "set names utf8"
Try setting the character set
<code>mysqli_set_charset($con, "utf8");</code>

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

PHP is used to build dynamic websites, and its core functions include: 1. Generate dynamic content and generate web pages in real time by connecting with the database; 2. Process user interaction and form submissions, verify inputs and respond to operations; 3. Manage sessions and user authentication to provide a personalized experience; 4. Optimize performance and follow best practices to improve website efficiency and security.

PHP is mainly procedural programming, but also supports object-oriented programming (OOP); Python supports a variety of paradigms, including OOP, functional and procedural programming. PHP is suitable for web development, and Python is suitable for a variety of applications such as data analysis and machine learning.

PHP and Python have their own advantages and disadvantages, and the choice depends on project needs and personal preferences. 1.PHP is suitable for rapid development and maintenance of large-scale web applications. 2. Python dominates the field of data science and machine learning.

PHP uses MySQLi and PDO extensions to interact in database operations and server-side logic processing, and processes server-side logic through functions such as session management. 1) Use MySQLi or PDO to connect to the database and execute SQL queries. 2) Handle HTTP requests and user status through session management and other functions. 3) Use transactions to ensure the atomicity of database operations. 4) Prevent SQL injection, use exception handling and closing connections for debugging. 5) Optimize performance through indexing and cache, write highly readable code and perform error handling.

The core benefits of PHP include ease of learning, strong web development support, rich libraries and frameworks, high performance and scalability, cross-platform compatibility, and cost-effectiveness. 1) Easy to learn and use, suitable for beginners; 2) Good integration with web servers and supports multiple databases; 3) Have powerful frameworks such as Laravel; 4) High performance can be achieved through optimization; 5) Support multiple operating systems; 6) Open source to reduce development costs.

PHP is suitable for web development and rapid prototyping, and Python is suitable for data science and machine learning. 1.PHP is used for dynamic web development, with simple syntax and suitable for rapid development. 2. Python has concise syntax, is suitable for multiple fields, and has a strong library ecosystem.

The main role of MySQL in web applications is to store and manage data. 1.MySQL efficiently processes user information, product catalogs, transaction records and other data. 2. Through SQL query, developers can extract information from the database to generate dynamic content. 3.MySQL works based on the client-server model to ensure acceptable query speed.

The process of starting MySQL in Docker consists of the following steps: Pull the MySQL image to create and start the container, set the root user password, and map the port verification connection Create the database and the user grants all permissions to the database
