Je tente de réaliser un site en chinois en php (4.3.10) /mysql (4.1.8)
sous Windows.
Voila ma table :
CREATE TABLE `chinois` (
`fr` varchar(100) character set latin1 NOT NULL default '',
`cn` varchar(100) NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=gb2312;
j'ai le problème suivant :
- Si j'utilise phpMyAdmin 2.7, je peux ajouter et visualiser des textes
en chinois sans problème.
- Si j'utilise PhpMyAdmin 2.5 ou un script php maison pour afficher mes
données, je n'obtiens que des points d'interrogation. (pourtant, dans
mon script, un echo de caractères chinois en dur s'affiche correctement
dans mon navigateur).
Question subsidiaire :
Une fois que j'aurais réglé ce problème, mon site pourra-t-il
fonctionner sous Linux avec php 4.3.10 et MySQL 3.23.58 ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
dmetzler
Je ne connais pas les versions de phpMyAdmin, mais entre deux versions, il y a du avoire un changement au niveau du traitement des charset. A priori la 2.7 fonctionne bien pour ça ;)
Pour ton script, il faudrait peut être que tu nous montre un bout de code pour qu'on puisse voir d'où ça peut venir.
Je ne connais pas les versions de phpMyAdmin, mais entre deux versions,
il y a du avoire un changement au niveau du traitement des charset. A
priori la 2.7 fonctionne bien pour ça ;)
Pour ton script, il faudrait peut être que tu nous montre un bout de
code pour qu'on puisse voir d'où ça peut venir.
Je ne connais pas les versions de phpMyAdmin, mais entre deux versions, il y a du avoire un changement au niveau du traitement des charset. A priori la 2.7 fonctionne bien pour ça ;)
Pour ton script, il faudrait peut être que tu nous montre un bout de code pour qu'on puisse voir d'où ça peut venir.
Fred
- Si j'utilise phpMyAdmin 2.7, je peux ajouter et visualiser des textes en chinois sans problème.
En fait, je viens de trouver la solution, en épluchant les sources de phpMyAdmin : il suffit d'executer la requete suivante avant les autres :
mysql_query("SET CHARACTER SET utf8");
@+
Fred
- Si j'utilise phpMyAdmin 2.7, je peux ajouter et visualiser des textes
en chinois sans problème.
En fait, je viens de trouver la solution, en épluchant les sources de
phpMyAdmin : il suffit d'executer la requete suivante avant les autres :
- Si j'utilise phpMyAdmin 2.7, je peux ajouter et visualiser des textes en chinois sans problème.
En fait, je viens de trouver la solution, en épluchant les sources de phpMyAdmin : il suffit d'executer la requete suivante avant les autres :
mysql_query("SET CHARACTER SET utf8");
@+
Fred
Bobe
nous a dit le 10.11.2005 14:26:
Je ne connais pas les versions de phpMyAdmin, mais entre deux versions, il y a du avoire un changement au niveau du traitement des charset. A priori la 2.7 fonctionne bien pour ça ;)
Idem pour la 2.6 (la 2.7 n'est pas encore passée en stable).
-- Aurélien Maille
dmetzler@myaccountingmail.com nous a dit le 10.11.2005 14:26:
Je ne connais pas les versions de phpMyAdmin, mais entre deux versions,
il y a du avoire un changement au niveau du traitement des charset. A
priori la 2.7 fonctionne bien pour ça ;)
Idem pour la 2.6 (la 2.7 n'est pas encore passée en stable).
Je ne connais pas les versions de phpMyAdmin, mais entre deux versions, il y a du avoire un changement au niveau du traitement des charset. A priori la 2.7 fonctionne bien pour ça ;)
Idem pour la 2.6 (la 2.7 n'est pas encore passée en stable).
-- Aurélien Maille
loufoque
Voila ma table : CREATE TABLE `chinois` ( `fr` varchar(100) character set latin1 NOT NULL default '', `cn` varchar(100) NOT NULL default '' ) ENGINE=MyISAM DEFAULT CHARSET=gb2312;
Est-ce que tu veux pouvoir afficher du texte français et chinois sur la même page ?
Voila ma table :
CREATE TABLE `chinois` (
`fr` varchar(100) character set latin1 NOT NULL default '',
`cn` varchar(100) NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=gb2312;
Est-ce que tu veux pouvoir afficher du texte français et chinois sur la
même page ?
Il me semble que pour du Chinois il faut passer en UTF16 puisque les caracteres sont codés en double byte (idem que l'Arabe ou le Japonais)
David
Olivier Miakinen
Bonjour,
Il me semble que pour du Chinois il faut passer en UTF16 puisque les caracteres sont codés en double byte (idem que l'Arabe ou le Japonais)
Je ne sais pas bien à quoi tu réponds. Ce serait sympa de citer un minimum de texte (pas tout, bien sûr) ainsi qu'il est expliqué par exemple ici : <http://www.giromini.org/usenet-fr/repondre.html>.
Donc, je ne sais pas à la place de quoi tu proposes UTF-16. Si c'est à la place d'un encodage 8 bits tel que ISO-8859-1 par exemple, alors c'est sûr que UTF-16 saura faire ce qui est impossible à ISO-8859-1, mais UTF-8 peut le faire aussi. Si c'est à la place de UTF-8, alors non, il n'y a aucune raison.
UTF-8 présente de nombreux avantages que n'ont pas les deux variantes d'UTF-16, dont : - compatibilité binaire avec US-ASCII ; - un seul encodage (deux pour UTF-16, entre big et little endian) ; - possibilité de se resynchroniser n'importe où.
-- Olivier Miakinen Troll du plus sage chez les conviviaux : le nouveau venu, avec son clan, s'infiltre dans les groupes de nouvelles. (3 c.)
Bonjour,
Il me semble que pour du Chinois il faut passer en UTF16 puisque les
caracteres sont codés en double byte (idem que l'Arabe ou le Japonais)
Je ne sais pas bien à quoi tu réponds. Ce serait sympa de citer un
minimum de texte (pas tout, bien sûr) ainsi qu'il est expliqué par
exemple ici : <http://www.giromini.org/usenet-fr/repondre.html>.
Donc, je ne sais pas à la place de quoi tu proposes UTF-16. Si c'est à
la place d'un encodage 8 bits tel que ISO-8859-1 par exemple, alors
c'est sûr que UTF-16 saura faire ce qui est impossible à ISO-8859-1,
mais UTF-8 peut le faire aussi. Si c'est à la place de UTF-8, alors non,
il n'y a aucune raison.
UTF-8 présente de nombreux avantages que n'ont pas les deux variantes
d'UTF-16, dont :
- compatibilité binaire avec US-ASCII ;
- un seul encodage (deux pour UTF-16, entre big et little endian) ;
- possibilité de se resynchroniser n'importe où.
--
Olivier Miakinen
Troll du plus sage chez les conviviaux : le nouveau venu, avec
son clan, s'infiltre dans les groupes de nouvelles. (3 c.)
Il me semble que pour du Chinois il faut passer en UTF16 puisque les caracteres sont codés en double byte (idem que l'Arabe ou le Japonais)
Je ne sais pas bien à quoi tu réponds. Ce serait sympa de citer un minimum de texte (pas tout, bien sûr) ainsi qu'il est expliqué par exemple ici : <http://www.giromini.org/usenet-fr/repondre.html>.
Donc, je ne sais pas à la place de quoi tu proposes UTF-16. Si c'est à la place d'un encodage 8 bits tel que ISO-8859-1 par exemple, alors c'est sûr que UTF-16 saura faire ce qui est impossible à ISO-8859-1, mais UTF-8 peut le faire aussi. Si c'est à la place de UTF-8, alors non, il n'y a aucune raison.
UTF-8 présente de nombreux avantages que n'ont pas les deux variantes d'UTF-16, dont : - compatibilité binaire avec US-ASCII ; - un seul encodage (deux pour UTF-16, entre big et little endian) ; - possibilité de se resynchroniser n'importe où.
-- Olivier Miakinen Troll du plus sage chez les conviviaux : le nouveau venu, avec son clan, s'infiltre dans les groupes de nouvelles. (3 c.)