|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 3 ![]() |
Bonjour,
J'ai deux sites web en cours de migration : - un chez Free, il s'agît d'un phpBB, BD MySQL en latin1_general_ci chez Free. - l'autre sur un linux dédié chez moi, c'est CMS (Xoops), BD MySQL latin1_general_ci en local. J'ai du migrer l'ensemble chez un ami, sur un serveur linux que j'ai monté. la configuration est absolument identique à celle de mon serveur linux. Le gros souci, vous l'avez compris, c'est que je me retrouve avec des caractères bizarres à la place des caractères accuentés : les é deviennent é par exemple. En revanche, le plus bizarre, est que certaine partie du phpBB apparaissent correctement, voir l'image ci-dessous : Je précise que je passe par phpMyAdmin pour faire mes backups, Free oblige. Autre précision, Firefox détecte de l'ISO-8859-1 pour deux sites webs, si je les passe en UTF-8, les caractères d'affichent correctement, enfin par tous, ceux qui s'affichent bien sur l'image ci-dessus, se transforme en ? dans un petit losange, comme le confirme cette image : J'ai essayé pas mal de chose, comme changé l'encodage pour la connexion dans phpMyAdmin, supprimer les déclaration character set et collate dans le backup SQL, créer la base d'abord dans un encodage particulier etc ... Je commence à saturer, le plus drôle est qu'avant mon xoops était chez Free et j'ai eu le même problème, mais impossible de me souvenir comment j'ai fait. Est-ce un problème MySQL, PHP ou Apache ?? Merci pour votre aide. (Modérateurs : je n'étais pas sûr de savoir où poster, déplacez ce sujet au bon endroit si cela pose un problème, merci) |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
En gros, ton "présentez-vous" est en utf8, et est lu comme du latin1. Par contre, ton "modérateur" est bien du latin1 (d'où le fait qu'il déconne quand tu affiches la page en Unicode).
As-tu essayé la fonction PHP utf8_decode() ? Si ça ne marche pas, il ne reste plus qu'à chercher dans quelle table et colonne est stocké le "présentez-vous", et à la repasser en latin1. |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 3 ![]() |
Merci pour cette réponse.
Je n'ai pas essayé de modifié le code puisqu'il s'agît de phpBB, et me plonger dedans me prendrai du temps que je n'ai pas. Le "modérateur" doit être issu d'un script php et n'est donc pas stocké en base, du moins c'est ce que je crois. Comment puis-je alors convertir toutes les données stockées en base en latin1 ? Sachant que les tables sont en déjà interclassement latin1_general_ci ... Pire j'ai même des problèmes pour poster des nouveaux messages contenant des accents sur phpBB. Sur Xoops, l'ajout de post avec accents fonctionne mais, les caractères accuentés se transforment en "?" Autre remarque, sous phpMyAdmin, tout est parfaitement normal en utilisant UTF-8 pour la connexion. J'avoue être totalement dépassé par la situation. |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : octobre 2007 Messages : 3 ![]() |
J'ai trouvé le problème, j'avais une erreur de configuration pour MySQL.
Je suis sous Gentoo, et j'avais fais une faute de frappe dans le fichier package.use :J'ai donc remplacé ce malheureux "b" en "v" et j'ai recompiler MySQL, pour qu'il prenne en charge latin1. Tout est rentré dans l'ordre. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com