en gros, si mes tests te montrent que ton client est en latin1 et déclaré en latin1, la meilleure solution est sans doute celle que tu as adoptée !
Si tu cherches de la lecture pour tes vacances,...
Type: Messages; Utilisateur: Antoun
en gros, si mes tests te montrent que ton client est en latin1 et déclaré en latin1, la meilleure solution est sans doute celle que tu as adoptée !
Si tu cherches de la lecture pour tes vacances,...
pas du tout. En gros, soit ton client (tes pages PHP) est déjà en UTF-8, et dans ce cas le SET NAMES corrigera une éventuelle erreur de déclaration, ou plus probablement ne changera rien.
Pour ce...
SQL par exemple ?
-- modifie et convertit toutes les colonnes d'une table
ALTER TABLE truc CONVERT TO utf8 COLLATE utf8_unicode_ci
- iso-8859-1 correspond effectivement à latin1
- tant qu'il n'y a pas de données, tu peux modifier la structure comme tu veux
- quand il y a des données... tant qu'elles sont correctes, on peut...
on indique que le client est en UTF8... ce qui s'exprime
SET NAMES utf8
;-)
C'est là où est ton erreur : le SET NAMES indique avec quel jeu de caractères on envoie les données à MySQL, quel que soit le jeu utilisé dans la colonne cible.
Autrement dit, si j'envoie à MySQL...
C'est valable pour l'ensemble de la session. Donc si je suis ton principe, le scénario serait le suivant :
- j'ouvre ma session
- j'envoie un premier paquet de requêtes avec un mauvais jeu de...
au début d'une session avec un client UTF8.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.