|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : novembre 2006 Messages : 9 ![]() |
Salut à tous,
je sais que le sujet des character seta été abordé des milions de fois, mais j'ai beau chercher, je trouve rien qui résoud mon probleme. Je vous explique : un serveur gentoo, avec apache 2.0.58-r2, php 5.1.6-r6, mysql 5.0.26-r1 un LAMP tout ce qu'il y a de plus classique. Sauf qu'un jour, j'ai voulu installer XOOPS. Et la, ca a mal tourné : les accents ne passent pas. Je me dis, bon, la page est en latin1, mysql doit renvoyer du utf8, donc jvai changer la conf et hop. Mais j'ai eu beau changer my.cnf, mettre latin1 partout, changer l'interclassement de mes bases en latin1_general_ci, rien n'y fait!!! dans un shell mysql, la commande : mysql> SHOW VARIABLES like 'character_set_%'; +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ est ce que ce character_set_system change tout? et si oui comment le changer? et si non que faire? merci d'avance! |
|
|
00
|
|
|
#2 | |||
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
Citation:
Citation:
Citation:
|
|||
|
|
00
|
|
|
#3 | ||
|
Invité de passage
![]() Inscription : novembre 2006 Messages : 9 ![]() |
voici un exemple qui ne passe pas :
Code :
pourtant, allez voir le résultat sur http://www.lyontraboules.net/test.php si on met le charset dans la balise meta a utf8, plus de probleme, de meme si on fait un Code :
@mysql_query("SET CHARACTER SET latin1"); Mais comme je n'ai ni les connaissances ni le temps pour me plonger dans le code de XOOPS, aucune de ces deux solutions ne me conviennent. voyez vous une solution? |
||
|
|
00
|
|
|
#4 | ||
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
ce que je constate sur ta page de test, c'est une disparition pure et simple du caractère accentué !
avec ta page PHP, je t'invite à faire le test suivant : Code :
|
||
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : novembre 2006 Messages : 9 ![]() |
effectivement, il a disparu, étrange.
la page est à jour avec ton script : http://www.lyontraboules.net/test.php |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
Donc ton script PHP est en UTF-8, même s'il produit une page HTML qui est en Latin-1.
Quant à ton test "INSERT 'é'...", il n'est valable que si tu fais un TRUNCATE TABLE avant. Autrement, il te montre toujours la première ligne de ta table (ce qui, à mon avis, explique la disparition du é). |
|
|
00
|
|
|
#7 | |
|
Invité de passage
![]() Inscription : novembre 2006 Messages : 9 ![]() |
Citation:
|
|
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : novembre 2006 Messages : 9 ![]() |
je pense avoir résolu le pb!
dans php.ini j'ai décommenté tout ce qui concernai les charset, et mis ISO-8859-1 : default_charset = "iso-8859-1" mssql.charset = "ISO-8859-1" (je pense que celui la ne sert a rien) et la page de test me donne : latin1 é (caractère 233) (caractère 0) merci de votre aide |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com