|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
Or3 Nouveau WRInaute
Inscrit le: 26 Nov 2007 Messages: 9
|
Posté le : Dim Avr 20, 2008 20:31 Sujet du message: quelques caractères russes qui ne passent pas....? |
|
|
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 |
|
| |
|
 |
magicaxe WRInaute occasionnel

Inscrit le: 18 Oct 2004 Messages: 150 Localisation: Dans les bras de Morphée
|
Posté le : Lun Avr 21, 2008 0:39 Sujet du message: quelques caractères russes qui ne passent pas....? |
|
|
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 |
|
| |
|
 |
jcaron WRInaute passionné

Inscrit le: 13 Fév 2004 Messages: 505 Localisation: Paris
|
Posté le : Lun Avr 21, 2008 1:29 Sujet du message: quelques caractères russes qui ne passent pas....? |
|
|
| magicaxe a écrit: |
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. |
|
| |
|
 |
Or3 Nouveau WRInaute
Inscrit le: 26 Nov 2007 Messages: 9
|
Posté le : Lun Avr 21, 2008 9:52 Sujet du message: quelques caractères russes qui ne passent pas....? |
|
|
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 |
|
| |
|
 |
magicaxe WRInaute occasionnel

Inscrit le: 18 Oct 2004 Messages: 150 Localisation: Dans les bras de Morphée
|
Posté le : Lun Avr 21, 2008 10:01 Sujet du message: quelques caractères russes qui ne passent pas....? |
|
|
| Probablement parce que c'est une collation rajoutée dans la version 6.0.4 de MySQL. Quelle est ta version? |
|
| |
|
 |
Or3 Nouveau WRInaute
Inscrit le: 26 Nov 2007 Messages: 9
|
Posté le : Lun Avr 21, 2008 10:26 Sujet du message: quelques caractères russes qui ne passent pas....? |
|
|
Je viens de trouver la solution ! )
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 |
|
| |
|
 |
| |
|
|