Maison > développement back-end > Problème PHP > Que dois-je faire si php mysql ne peut pas interroger les noms chinois ?

Que dois-je faire si php mysql ne peut pas interroger les noms chinois ?

藏色散人
Libérer: 2023-03-12 19:02:01
original
1671 Les gens l'ont consulté

Solution au problème selon lequel php mysql ne peut pas interroger les noms chinois : 1. Assurez-vous que l'encodage de MySQL et PHP est cohérent ; 2. Ajoutez "header("Content-type: text/html; charset=utf-8") à l'entête de la page php ;".

Que dois-je faire si php mysql ne peut pas interroger les noms chinois ?

L'environnement d'exploitation de cet article : système Windows 7, PHP7.1, ordinateur Dell G3.

Que dois-je faire si MySQL ne peut pas interroger les noms chinois ?

1. Assurez-vous que l'encodage de MySQL et PHP est cohérent

MySQL

Modifiez le format d'encodage de l'ensemble de la base de données

Remarque : si les données ne sont pas importantes, vous pouvez directement modifier le format d'encodage du base de données, puis reconstruisez la table. (La base de données dans cet exemple est test)

alter database test character set utf8
Copier après la connexion

Modifiez le format d'encodage de la table entière

Remarque : Si les données sont importantes, exécutez le code suivant pour convertir le format d'encodage de la table entière en utf8 (les données de cet exemple exemple La table est étudiants)

alter table students convert to character set utf8
Copier après la connexion

Modifiez le format d'encodage du champ sname dans la table des étudiants

Remarque : La première étape consiste à modifier le format d'encodage du champ sname dans la table.

Le deuxième sname varchar (64) est le nom et le type du champ à modifier (généralement les mêmes que dans la table d'origine, aucune modification ne sera apportée)

not null signifie que le sname ne peut pas être vide une fois modifié. (Vous pouvez choisir de ne pas l'ajouter)

alter table students change sname sname varchar(64) character set utf8 not null;
Copier après la connexion

Vous pouvez également utiliser phpMyAdmin pour saisir la table de données

Que dois-je faire si php mysql ne peut pas interroger les noms chinois ?

ou saisir la base de données

Que dois-je faire si php mysql ne peut pas interroger les noms chinois ?

PHP

Ajouter dans l'en-tête de la page php :

header("Content-type: text/html; charset=utf-8");  //注意:这一句前不能向页面输出任何内容
Copier après la connexion

De plus, ce qui est défini dans le code HTML est

2. Après avoir obtenu les informations transmises par le champ de recherche, ajoutez des guillemets simples

Zone de recherche :

Entrez le nom :

Recherchez

xxx.php:
$tofind = $_POST["userName"];
$sql = "SELECT * FROM user WHERE  name='$tofind';";
$result = $conn->query($sql);
Copier après la connexion

pour interroger la chaîne de caractères chinois.

【Au moins le mien est terminé. . 】

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal