Page 1 sur 1

Charset Utf-8

Posté : 18 juil. 2007, 10:58
par sylk
Bonjour,

Voilà, j'ai parcouru pas mal de sites et de pages de forum, sans trouver une solution à mon probème.

Voila, je gère une liste d'adresses en multilingue (français, anglois, et surtout chinois...)
J'ai mis toute ma base de donnée, mes pages HTML, mes scripts PHP en UTF-8

Quand j'insère un charactère chinois dans la base et je le relis depuis mon interface, aucun probléme il s'affiche juste.
Par contre si je vais voir le même charactère dans ma base il ressemble à ça: 到更 alors qui devrait ressemble à ça: 到

Par contre si je vais insèrer ce même charactère 到 directement avec phpMyAdmin. Il s'affiche sous forme de ??? sur mes pages HTML.

Quelqu'un a-t-il une piste. Ca me rend fou ces charsets.
Salutations

Sylk

Posté : 18 juil. 2007, 11:00
par DocType
peut être déclarer ton charset dans ta programmation?... :roll:

Posté : 18 juil. 2007, 11:03
par joachiim
Quand j'insère un charactère chinois dans la base et je le relis depuis mon interface, aucun probléme il s'affiche juste.
je comprend pas ton problême tout vas bien.
Cela ne pose pas de problême que ton char soit stocké autrement
puisqu'au final il s'affiche corectement


pour les differents charset y'a un article W3c ici
http://www.w3.org/International/O-charset.fr.php

On va bientôt pouvoir coder en japonais des fonction en turc qui renvoi du texte hindou
on va rigoler

Header (php)

Posté : 18 juil. 2007, 11:05
par sylk
Hi,

Ouais, c'est bien ce que j'ai fait, j'ai ça tout en haut de chaque page.
header('Content-Type: text/html; charset=utf-8');
Mais rien n'y fait.
Normalement si tout est juste, je devrais bien voir un charactère chinois dans ma BdD? Ou bien (suis suisse... ;-) )?

Sylk

Posté : 18 juil. 2007, 11:06
par joachiim
aparement ce qui t'embete c'est qui l'est encodé
je vois toujours pas le probleme, puisqu'au final
tu le sort nickel

Non, c'était pas nickel

Posté : 18 juil. 2007, 14:04
par sylk
Un copain m'a soufflé la solution à tout mes problème.
mysql_query("SET NAMES 'utf8'", $ConnDist) or die(mysql_error());
Bon, ce que je n'ai toujours pas compris, et s'il fallait utiliser cette requête avant chaque requête faite à la base de donnée?
En tout cas maintenant, j'obtiens la même chose dans ma base de donnée et sur mon front-site... C'est ce que je voulais, donc je suis content.

Je dois dire que ces charset, restent toujours un peu obscure pour moi.
Pas très aisé comme sujet.

Bon après-midi caniculaire ! Sortez vos ventilos !

Sylk