"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Pourquoi mes emojis n'enregistrent-ils pas dans ma base de données MySQL en utilisant UTF8MB4?

Pourquoi mes emojis n'enregistrent-ils pas dans ma base de données MySQL en utilisant UTF8MB4?

Publié le 2025-03-23
Parcourir:911

Why Are My Emojis Not Saving in My MySQL Database Using utf8mb4?

mysql utf8mb4: les erreurs se produisant tout en stockant emojis

vous rencontrez des erreurs lorsque vous essayez d'enregistrer des noms contenant des emojis vers votre base de données MySQL à l'aide de l'encodage UTF8MB4. Le problème découle des différences dans les variables spécifiques à la base de données entre les paramètres globaux et votre base de données spécifique.

Vérification de la configuration de la base de données

  1. Vérifiez que les variables de base de données globales sont définies sur "UTF8MB4" pour "les caractères" "Collation" en utilisant la requête:
SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
  1. pour la base de données pertinente, les variables ci-dessus sont également définies "utf8mb4" et "utf8mb4_ respectivement, en utilisant la même requête dans phpmyadmin.

My.cnf Configuration

Inspectez votre fichier my.cnf pour vous assurer que les paramètres suivants sont présents:

[mysql]
default-character-set = utf8mb4

[mysqld]
...
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

Paramètres mysqli / pDo

Si vous vous connectez via mysqli / pDo, définissez les options suivantes:

$mysqli->set_charset('utf8mb4');

$dbh->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, 'SET NAMES utf8mb4');

solution potentielle

exécutant la déclaration SQL "set les noms utf8mb4;" Au sein d'une session MySQL définit le client, la connexion et les résultats des caractères sur UTF8MB4, résolvant potentiellement le problème.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3