Pages :
Bonjour à vous! Smiley smile

Encore un souci d'encodage Smiley confus

J'ai importé mon fichier.csv (encodage utf8) sur ma base de données en locale, elle même en utf8.
Il se trouve que tous les mots qui ont un accent se trouvent coupés à partir de la lettre accentuée, par exemple pour le mot "Drôme", il ne reste plus que le "D".
Pourquoi?
Modifié par Ipszy (28 Nov 2007 - 09:54)
Bonjour,

Malgré tous les posts qu'il y a en ce moment sur le sujet je n'ai pas encore réussi à régler mon problème Smiley decu
Hello Ipszy Smiley smile ,

Hmmm... je ne comprends pas le lien entre un fichier .csv (Excel) et mysql Smiley rolleyes ???
Bonjour Heyoan, Patidou,

Mes contacts étaient déjà répertoriés sur un fichier excel. Smiley cligne
Modifié par Ipszy (28 Nov 2007 - 13:07)
Patidou a écrit :
phpmyadmin permet d'importer des fichiers csv (qui ne viennent pas forcément d'excel). Smiley cligne

Ben décidément on en apprend tous les jours Smiley langue !

En tous cas cela pourrait expliquer le problème : il est possible qu'un accent soit transformé en entité (par exemple é) et que le point-virgule soit interprété comme une séparation de 2 champs Smiley murf ...
Je n'ai pas du tout de point virgule à l'intérieur de mes champs si c'est ce que tu penses ...
Je suis sur mac et je l'ai enregistré sous CSV (séparateur: point-virgule) .
J'ai bien fait attention que dans les options web des préférences général de mon excel soit sur codage Unicode (UTF-8) et,
comme mis dans mon 1er post, phpMyAdmin est également configuré en Unicode (UTF-8) ainsi que les interclassements de mes champs.

J'avoue que je suis débutante en la matière mais la logique voudrait que ça colle non?

Smiley ohwell
Re',

je viens de faire un test chez moi (Excel / Options Web / UTF-8) et le fichier généré est encodé en ANSI (d'après Notepad++) Smiley ohwell ...
Heyoan a écrit :
Re',

je viens de faire un test chez moi (Excel / Options Web / UTF-8) et le fichier généré est encodé en ANSI (d'après Notepad++) Smiley ohwell ...


Oui le problème doit être là... Par contre avec openoffice on peut définir un encodage à la sauvegarde. C'est peut-être la solution.
Que veux-tu dire Patidou par
a écrit :

"Ipszy, tu as bien indiqué le bon séparateur (virgule, point virgule)?"

A part l'option d'enregistrement sous CSV (séparateur: point-virgule), je ne trouve nulle part d'autres possibilités de le faire.
Essaye de reprendre le fichier excel dans OpenOffice ou NeoOffice et sauve-le en csv avec encodage UTF8.
Tu as un bon éditeur de code sous la main?

Reprends le fichier CSV dans cet éditeur. Vérifie que l'encodage passe bien, et qu'il s'agit bien de caractères UTF-8.

Pour les histoires d'encodages, mieux vaut se fier aux bons outils. Le plus fiable étant encore... la vérification des données enregistrées dans un éditeur hexadécimal (soyons fous...).
Florent V. a écrit :
Le plus fiable étant encore... la vérification des données enregistrées dans un éditeur hexadécimal (soyons fous...).
Fichtre Smiley ravi !
alors voila comment se présente mes accents dans OpenOffice:
Midi-Pyrホnホes
Drルme
Finistマre

Heuuu.... je préfère vous mettre une capture d'écran parce que à la prévilualisation c'est encore différent

upload/14423-bizarerie.jpg

Smiley ohwell
Patidou,

Avec OOo, j'ai ouvert mon fichier excel et je l'ai enregistré en texte CSV(.csv).
J'ai tout fermé et lorsque je l'ai réouvert avec OOo, les lettres sont bien accentuées.
Je viens à l'instant de le réimporté dans ma bdd (localhost) et... Allélujah !!
Tout est top nickel.

Merci beaucoup pour ton aide.

Par contre sur le serveur de mon client, je peux voir que phpMyAdmin est enFrançais-French (utf-8) mais rien n'indique si mes tables le sont.
Je n'ai pas la partie interclassement Smiley ohwell
Et lorsqu'une personne s'enregistre les lettres accentuées sont en : & Atilde;& copy;
et dans la partie que peut gérer mon client en: é Smiley eek
Ipszy a écrit :
Je n'ai pas la partie interclassement Smiley ohwell

Attention, l'interclassement n'est pas l'encodage.
Juste pour info, quelle est la version de MySQL utilisée? Parce qu'avant la version 4.1 il me semble que la gestion de l'utf-8 c'était la merde...

Ipszy a écrit :
Et lorsqu'une personne s'enregistre les lettres accentuées sont en : & Atilde;& copy;

Une fonction qui traine en trop, qui convertit les caractères.

Ipszy a écrit :
et dans la partie que peut gérer mon client en: é Smiley eek

Quel est l'encodage déclaré pour cette interface?

(Si les notions d'encodage réel et d'encodage déclaré ne sont pas bien connues, voir la FAQ, crévindiou!)
Bonjour à vous ! Smiley smile

a écrit :
Florent à écrit:
Attention, l'interclassement n'est pas l'encodage.

Alors il y a quelque chose que je ne comprends pas... Pourquoi est-ce qu'il n'y a qu'une liste d'encodage sous l'Interclassement?

La version du client MySQL: 5.0.45, je ne sais pas si ça a une importance la version de phpMyAdmin - 2.10.3

Pour la fonction qui traîne en trop j'ai beau regarder je ne la trouve pas... mais bon, suis toujours novice en la matière!

Voila pour ce qui est de l'encodage déclaré dans l'interface de mon client:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

(et la FAQ sur les encodage je vais finir par la connaître par cœur, crévindiou! Smiley biggrin , mais j'y retourne encore)
Modifié par Ipszy (29 Nov 2007 - 15:09)
Pages :