CVS - Import MySql via PhpMyAdmin - Accents

CamilloMac

Membre confirmé
20 Juillet 2009
14
2
www.golftechnic.com
Bonjour à tous,

Je cherche à importer dans une table d'une BDD MySql, le contenu d'un fichier se trouvant sur le site de l'INSEE et comportant la liste des cantons de France (http://www.insee.fr/fr/methodes/nomenclatures/cog/telechargement.asp).

1/Depuis le site de l'INSEE, si je fais enregistrer sous depuis Safari, je récupère le fichier, mais je perds les accents, j'ai des caractères moches à la place (vu sous textedit) ==> piste abandonnée

2/ Depuis le site de l'INSEE, je clique sur le lien correspondant au fichier des cantons, il s'affiche dans Safari correctement avec les accents. Je fais un copier collé dans Numbers, ça marche bien, j'ai les accents. Je fais ensuite partager/exporter en csv utf_8. J'ouvre le fichier généré, je perds encore les accents ...

Comment faire pour avoir ces satanés accents correctements :confused: ?

Pour finir, je tente quand même l'import de ce fichier CSV dans une table MySql via PhpMyAdmin ... j'ai un message d'erreur qui me dit "Nombre de champs invalide dans les données CSV à la ligne 1". Pourquoi ? Les séparateurs sont bien des points virgules, peut-ëtre un pbm de retour à la ligne non détecté ...


Si une âme charitable pouvait m'expliquer comment importer le fichier depuis site de l'INSEE jusque dans une table MySql et sans perdre les accents, je lui en serai très reconnaissant ;)

A bientôt j'espère ...
Camillo
 
Les accents c'est qu'une question d'encodage de texte. Aucun programme ne peut le deviner tout seul, il faut l'indiquer quand tu ouvres le fichier. Même quand tu fais ouvrir avec textedit, ou la plupart des éditeurs, on te propose de le choisir.
Bref, t'essayes en iso-8859-1 (dis iso-latin-1 ou windows-latin1 qui est quasi équivalent), si là les accents sont sur deux caractères, c'est que c'est de l'utf-8 (l'utf-8 universel étant... le suédois :D).
Pour ton problème d'importation du csv sous mysql, j'imagine que c'est juste le nombre de champs de ta table qui ne correspond pas au nombre de champs du fichiers csv.

(remarque : j'adore les fichiers csv séparés par des points-virgules :D csv signifiant comma separated values :D)