[Résolu]Problème de caractères depuis migration de siteweb

Problème de caractères depuis migration de siteweb [Résolu] - PHP - Programmation

Marsh Posté le 19-10-2006 à 21:25:20    

Bonjour, voilà j'expose mon problème, j'ai donc migrer un siteweb+base mysql heberger sur un serveur dedié en Red Hat Entreprise 4 (heberger aux US) vers un autre serveur dedié mais lui sous Debian 3.1 (heberger en FRance). J'ai donc migrer l'ensemble du site mais également ca base de donné mysql. Une fois tout fini et le nom de domaine transferer je me retrouve avec un gros problème de caractère, toutes les lettres avec accents sont remplacées par des ? (point d'interrogations), j'ai donc compararer les valeur definie dans les deux db et elle sont identiques (Interclassement pour la connexion MySQL: UTF8 Unicode ci - Jeu de caractères pour MySQL: UTF-8 Unicode (utf8) - 58 table(s) Somme 1 695 MyISAM latin1_swedish_ci 598,1 )
 
Quelqu'un aurait-il une solutions a ce problème, en sachant que c'est un site basé sur xoops.
 
Merci
 
Edit:

Citation :


mysql Ver 14.7 Distrib 4.1.11, for pc-linux-gnu (i386)
 
Connection id: 55
Current database: mssxoops
Current user: AdminMSS@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 4.1.11-Debian_4sarge7-log
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
UNIX socket: /var/run/mysqld/mysqld.sock
Uptime: 8 hours 53 min 45 sec


Citation :


mysql> show create database mssxoops;
+----------+---------------------------------------------------------------------+
| Database | Create Database |
+----------+---------------------------------------------------------------------+
| mssxoops | CREATE DATABASE `mssxoops` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+---------------------------------------------------------------------+
1 row in set (0.00 sec)


Message édité par legremlins_keitaro le 20-10-2006 à 14:18:55
Reply

Marsh Posté le 19-10-2006 à 21:25:20   

Reply

Marsh Posté le 20-10-2006 à 12:06:04    

voilà j'ai rajouter quelque infos :)

Reply

Marsh Posté le 20-10-2006 à 12:43:17    

latin1, c'est pas de l'UTF-8, c'est des codes ascii.
T'as donc deux solutions :

  • changer les réglages dans mysql pour que toutes les colonnes texte de tes tables soient en UTF-8 et recharger ensuite les données
  • faire un script php qui lira les données dans un fichier et qui les transformera à la volé pour être dans l'encodage de la table.


La seconde méthode est surement moins rébarbative, mais elle est surement plus longue à mettre en place et si ensuite xoops envois les données en UTF-8 tu te retrouveras coincé.

Reply

Marsh Posté le 20-10-2006 à 13:39:00    

ok donc faudrai que je modifi toute les table de la base de donnée en utf8 c bien ca?

Reply

Marsh Posté le 20-10-2006 à 13:51:25    

Bon je ne trouve pas d'ou ca vient, je vien de comparer les table en ligne de commande via show create database et autre, les deux sont identiques en totu point, tout est en latin1 :( donc le problème doit venir d'ailleur

Reply

Marsh Posté le 20-10-2006 à 14:59:41    

Bon, précisément, qu'est ce que t'indique ta base actuelle et ton ancienne base quand tu tapes ces requettes là?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed