[Résolu] Afficher des caractères slovaques...

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics

[--Eric--]
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Jan 06, 2004 10:48

[Résolu] Afficher des caractères slovaques...

Message le Mar Mai 20, 2008 8:51

Bonjour,
J'ai une base de donnée mySQL en utf8_bin qui comporte des enregistrement dans tout un tas de langues...
Pour que les caractères accentués et "exotiques" s'affichent correctement j'ai placé un
Code: Tout sélectionner
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");

après la connexion à mySQL et j'affiche mes résultats avec la foncton utf8_decode.
Ca fonctionne bien saufs pour quelques caractères, notamment les caractères slovaques.
Par exemple :
Spoločenskovedný ústav, Košice

m'affiche
Spolo?enskovedný ústav, Ko?ice

Je patauge un peu...
Merci pour votre aide.

Eric.

Edit: Je ne ne sais pas si c'est du polonais en fait :? mais le problème est le même... ;-)
Dernière édition par [--Eric--] le Mer Mai 21, 2008 15:30, édité 2 fois.

jcaron
WRInaute accro
WRInaute accro
 
Messages: 1234
Inscription: Ven Fév 13, 2004 20:33

Re: Afficher des caractères polonais...

Message le Mar Mai 20, 2008 9:25

[--Eric--] a écrit:j'affiche mes résultats avec la foncton utf8_decode.


Ca veut dire que tu convertis en ISO-8859-1, qui ne contient pas les caractères utilisés pour le polonais et autres langues d'europe de l'Est, et je ne parle même pas du cyrillique, de l'arabe, des kanji, et j'en passe...

Reste en UTF-8 de bout en bout: enlève le utf8_decode, envoie tes pages avec le charset: UTF-8 (évidemment ça veut dire que tout le reste de ton texte, y compris HTML et autres données provenant de la BDD doivent être en UTF-8. Au pire avec utf8_encode tu pourras convertir ce qui ne l'est pas).

[--Eric--] a écrit:
Spoločenskovedný ústav, Košice
Edit: Je ne ne sais pas si c'est du polonais en fait :? mais le problème est le même... ;-)


Je penche pour du Slovaque (en tous cas mes outils de détection de langue le pensent, mais avec 3 mots ce n'est pas forcément très fiable).

Jacques.

[--Eric--]
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Jan 06, 2004 10:48

Message le Mar Mai 20, 2008 10:08

Merci pour ta réponse.

J'enlève aussi
Code: Tout sélectionner
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");

??

- J'ai enregistré mon fichier php en utf8 (j'utilise EditPlus)
- J'ai ajouté :

Code: Tout sélectionner
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />


et enlevé donc les utf8_decode() mais maintenant je n'ai plus que les accents aigües et graves qui s'affichent correctement tout les autres sont remplacés par des "?"

jcaron
WRInaute accro
WRInaute accro
 
Messages: 1234
Inscription: Ven Fév 13, 2004 20:33

Message le Mar Mai 20, 2008 10:18

[--Eric--] a écrit:J'enlève aussi
Code: Tout sélectionner
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");

??


Je ne suis pas un grand spécialiste de mysql (plutôt postgresql moi), mais je ne crois pas, non. Le but du jeu est de faire en sorte que tout soit en UTF-8.

[--Eric--] a écrit:maintenant je n'ai plus que les accents aigües et graves qui s'affichent correctement tout les autres sont remplacés par des "?"


Dans le texte qui vient d'où? De la base de données, du PHP, de fichiers externes (ou d'autres fichiers PHP "inclus")...?

Jacques.

[--Eric--]
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Jan 06, 2004 10:48

Message le Mar Mai 20, 2008 10:25

Du texte qui vient de mysql pardon.

Si je laisse
Code: Tout sélectionner
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");


Ca me donne :

[quote]SpoloÄ

jcaron
WRInaute accro
WRInaute accro
 
Messages: 1234
Inscription: Ven Fév 13, 2004 20:33

Message le Mar Mai 20, 2008 10:32

[--Eric--] a écrit:Si je laisse
Code: Tout sélectionner
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");


Ca me donne :

Spolo�enskovedný ústav, Košice


:evil:


Au choix, soit le fait que tu es en UTF-8 n'est pas reconnu par ton browser (tu n'aurais pas deux meta http-equiv=content-type?), soit tu as quelque chose qui convertit à nouveau de l'ISO en UTF-8 (et comme c'est déjà de l'UTF-8, forcément, ça ne ressemble plus à rien), genre un utf8_encode pas nécessaire. Dans le pire des cas, c'est le contenu de la base qui n'est pas cohérent, mais ça ne me paraît pas compatible avec le comportement précédent (avec le utf8_decode). Ceci dit, comme déjà dit, je ne suis pas le plus grand pro de mysql...

Ce serait probablement plus simple en voyant la page, elle est accessible? Adresse par MP si tu préfères...

Jacques.

[--Eric--]
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Jan 06, 2004 10:48

Message le Mar Mai 20, 2008 12:04

En cherchant un peu j'ai vu qu'une balise <meta> n'avait aucune utilité si le serveur Apache dit qu'on est en iso-machinchose... le navigateur n'en tient pas compte.

J'ai donc ajouté :

Code: Tout sélectionner
header("Content-type : text/html ; charset=utf-8") ;


laissé

Code: Tout sélectionner
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET utf8");


et tous mes résultats s'affichent désormais correctement. Merci pour l'aide précieuse, je commence à bcp mieux comprendre ces histoire d'encodage !

wrodka
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 132
Inscription: Sam Jan 14, 2006 15:42

Message le Mer Mai 21, 2008 15:01

C'est du tchèque ou du slovaque, mais ce n'est en aucun cas du polonais.

[--Eric--]
WRInaute impliqué
WRInaute impliqué
 
Messages: 415
Inscription: Mar Jan 06, 2004 10:48

Message le Mer Mai 21, 2008 15:30

Oui c'est slovaque en fait, j'édite le titre :-)


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités