Résolution des erreurs de « valeur de chaîne incorrecte »
L'apparition d'erreurs de « valeur de chaîne incorrecte » lors de la réception d'e-mails non latins indique un problème sous-jacent avec encodage de caractères. Voici une approche systématique pour résoudre ce problème :
Identifier la cause
Les erreurs suggèrent que la colonne MEDIUMTEXT « contenu » n'est pas correctement encodée. Bien qu'il soit configuré pour utiliser UTF-8, certains e-mails contiennent toujours des caractères qui ne sont pas conformes au codage UTF-8.
Résoudre le problème
Configurez la connexion à la base de données : Définissez le jeu de caractères et le classement sur UTF-8 :
SET NAMES 'utf8mb4'; SET CHARACTER SET utf8mb4;
Vérifiez les paramètres de la table et de la base de données :
Pour le table 'contenu' :
ALTER TABLE table_name MODIFY contents MEDIUMTEXT COLLATE utf8mb4_general_ci;
Pour la base de données :
ALTER DATABASE database_name DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
Effets de le correctif
Remarque :
Il est recommandé d'utiliser UTF-8mb4 au lieu de l'ancien jeu de caractères UTF-8, car il offre une meilleure prise en charge d'une plus large gamme de caractères Unicode.
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!