quelques caractères russes qui ne passent pas....?

Nouveau WRInaute
Bonjour,

J'ai quelques problèmes avec du Russe.
J'ai une administration pour que je puisse insérer du texte dans une base de données mysql.
Ma base est en utf8-bin, les scripts php en charset=utf-8.
Ca fonctionne je dirai partiellement, car j'ai quelques caractères russes qui ne passent pas et sont remplacés par des ???.

Ex : "процессору" devient "проце�?�?ору"

Merci bcp de votre aide !

Aurélie
 
WRInaute discret
C'est parce que certains caractères Russes, Hébreux, Arabes, Chinois, Coréens ou Japonais nécessitent de l'UTF-16 plutôt que de l'UTF-8. Tu doit modifier la collation de ta base de données et réinsérer les données.

edit: faute d'orthographe
 
WRInaute accro
magicaxe a dit:
C'est parce que certains caractères Russes, Hébreux, Arabes, Chinois, Coréens ou Japonais nécessitent de l'UTF-16 plutôt que de l'UTF-8. Tu doit modifier la collation de ta base de données et réinsérer les données.

edit: faute d'orthographe

Si c'est vrai, alors c'est un sale gros bug (dans mysql si j'ai bien tout suivi?). On peut encoder en UTF-8 n'importe quel caractère Unicode, aussi bien qu'en UTF-16, les inconvénients (mots de 16 bits) en moins, c'est tout le principe d'UTF-8...

J'espère que ce n'est pas là la raison...

Jacques.
 
Nouveau WRInaute
Merci pour vos réponses, mais question à la con, comment fait'on pour passer une base mysql en collation utf-16, car je n'ai pas ce choix dans le menu déroulant de phpmyadmin, et même si je tape utf16-bin en créant ma base par une requête, il me dit que ce format n'existe pas....

#1273 - Unknown collation: 'utf16-bin' OU #1273 - Unknown collation: 'utf16'


Aurélie
 
WRInaute discret
Probablement parce que c'est une collation rajoutée dans la version 6.0.4 de MySQL. Quelle est ta version?
 
Nouveau WRInaute
Je viens de trouver la solution ! :eek:)
Donc pas la peine de mettre de l'utf-16 apparemment.

J'ai tout simplement fait un mysql_query("SET NAMES utf8") avant de faire ma requête "INSERT INTO"....et mes textes sont tous niquels.....
Alors pourquoi, ca je ne sais pas...mais çà fonctionne !

Merci de votre intérêt en tous cas !

Aurélie
 
Discussions similaires
Haut