demande conseil (correction charactères)

Le
unbewusst.sein
bon, j'ai une base assez petite qui contient mes bookmarks.

il y a pas mal d'erreur d'encodage, je ne sais d'où ça provient,
utilisant toujours UTF-8

ce que je me propose de faire :

utiliser le dump de la base (réalisé avec phpMyAdmin)

dans ce fichier *.sql, ouvert dans un éditeur de texte quelconque
(TextMate) je corrige "à la main" (par Find "é" Replace "é").

je DROP la table et je réinserre la table corrigée.

en gardant les mêmes ID (en fait j'ai deux tables : folders et
bookmarks, faudrait que ça corresponde)

le problème est que les tables sont en "auto_increment" :

CREATE TABLE IF NOT EXISTS `bookmarks` (
`id` int(10) unsigned NOT NULL auto_increment,
`folder_id` int(10) unsigned NOT NULL,
`name` varchar(255) collate utf8_unicode_ci NOT NULL,
`url` varchar(255) collate utf8_unicode_ci NOT NULL,
`description` varchar(2048) collate utf8_unicode_ci default NULL,
PRIMARY KEY (`id`),
KEY `id` (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
AUTO_INCREMENTh1 ;

j'imagine que je dois -- au moins -- mettre (dernère ligne ci-dessus) à
:
AUTO_INCREMENT=0;

???

un pb potentiel ?
une idée plus élégante ? (=> chercher la cause du pb)

je viens de vérifier un truc, en réalité mes deux tables sont issues
d'un fichier xml qui lui, n'a pas ces erreurs d'encodage :[

donc dans ma manip ci-dessus, je risque de me retrouver avec les mêmes
erreurs d'encodage

du coup, je ne sais plus trop quoi faire

é changé en é c'est bien de l'utf-8 pris pour de l'iso non ? (deux
caractères au lieu d'un seul)

l'affaire se corse

cette base je peux l'interroger par php

si je fais une recherche d'un bookmark dont le dump phpMyAdmin me dit
qu'il y a une erreur d'encodage, patatraque, pas d'erreur d'encodage sur
ma page, qui est elle-même en UTF-8 ???

pour être clair, dans le dump j'ai :
'UCL/SRI - Logiciel Internet Macintosh en français'
-^^-

à l'affichage html :
UCL/SRI - Logiciel Internet Macintosh en français
^

idem dans le fichier xml original

c'est donc le dump qui déconne (je réfléchis tout haut).


j'avais déjà remarqué que, pour une autre base, l'affichage dans
phpMyAdmin pouvait-être correct alors que la base, cette fois-ci,
interrogée en php donne des erreurs d'encodage

notez que je n'ai pas bien pigé à quoi sert le "collate
utf8_unicode_ci"
--
Une Bévue
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jogo
Le #21901611
Sur fr.comp.applications.sgbd, Une Bévue disait :

c'est donc le dump qui déconne



Je pense même qu'il n'y a que le logiciel que tu utilises pour
visionner le dumpfile en question qui ne pige pas que c'est de l'UTF-8.

--
I can't understand why a person will take a year or two to write a
novel when he can easily buy one for a few dollars.
-- Fred Allen
unbewusst.sein
Le #21901591
Jogo

Je pense même qu'il n'y a que le logiciel que tu utilises pour
visionner le dumpfile en question qui ne pige pas que c'est de l'UTF-8.



c'est TextMate (sur Mac OS X 10.4.11) il m'indique UTF-8, en général
j'ai confiance en la détection d'encodage sur TextMate...
--
Une Bévue
Publicité
Poster une réponse
Anonyme