osCommerce France : Accueil Forum Portail osCommerce France Réponses aux questions Foire aux contributions

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> [Résolu] Passage à UTF-8, PB avec les caracttères accentués
Dudule
posté 20 Oct 2013, 00:22
Message #1


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 196
Inscrit : 9-December 02
Lieu : Bordeaux
Membre no 654



Bonjour,
Je viens de refaire une installe de ma boutique sur un serveur de test afin de la passer au format de caractères UTF-8.
J'ai converti tous les fichiers code et languages, modifié le format de la basse de données en utf8_general_ci ainsi que le charset dans french.php.

Mais je me retrouve avec des caractères mal codés qui proviennent de la basse de donnée du genre : D�tails clients ou Propri�taire de la boutique...

J'ai fait la conversion de la base avec :
Conversion de la base :
ALTER DATABASE nomdelabase CHARACTER SET UTF8 ;

puis conversion des tables :
ALTER TABLE additional_images CONVERT TO CHARACTER SET UTF8 ;
ALTER TABLE address_book CONVERT TO CHARACTER SET UTF8 ;
.....
....


puis :
ALTER TABLE additional_images CHARACTER SET UTF8 ;
.....
......

D'où cela pourrait-il venir ?
Merci.

Ce message a été modifié par Dudule - 31 Oct 2013, 00:50.


--------------------
osCommerce Online Merchant v2.2 RC1 W3C Valid FR en prod en PHP5.2.14 chez O2Switch
Go to the top of the page
 
Bonbec
posté 20 Oct 2013, 07:44
Message #2


Ceinture marron OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1464
Inscrit : 30-May 06
Lieu : Vichy (03)
Membre no 10583



Bonjour,

Modifier le charset uniquement dans le fichier french n'avait pas été bon pour moi.
J'ai ajouté ceci en tête de chaque fichier de page :
header('Content-Type: text/html; charset=utf-8');
J'avais aussi modifié la ligne META Content-Type en
<META http-equiv="Content-Type" content="text/html; charset=utf-8">

J'avais aussi converti et enregistré toutes mes pages en utf-8 sans BOM.

Pour Mysql dans les fichiers de connexion à la bdd, j'avais ajouté ceci :
mysql_set_charset('utf8', $$link);

De mémoire c'est ce que j'avais fait.


--------------------
Config 1 en live : Osc 2.2 très fortement modifié ... UTF-8 et Php 5.4.
Contribs installées : down_for_maintenance_v 2.3 | Estimated Shipping v1.5 | imprint_1_3_5 | low_stock_report_v2.04 | visible_countries_1.2b | Products Tabs | shoppingCart_cleanup_v1.01.0 | + trop de bidouilles persos pas très OsCommerce (erreurs de jeunesse)
Config 2 en local avec UwAmp : Osc 2.3.4 BS
Go to the top of the page
 
Dudule
posté 20 Oct 2013, 10:30
Message #3


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 196
Inscrit : 9-December 02
Lieu : Bordeaux
Membre no 654



Bonjour,

Citation (Bonbec @ 20 Oct 2013, 08:44) *
J'ai ajouté ceci en tête de chaque fichier de page :
header('Content-Type: text/html; charset=utf-8');
J'avais aussi modifié la ligne META Content-Type en
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
J'ai fait ça dans le fichier french.php et ça a l'air de fonctionner

Citation (Bonbec @ 20 Oct 2013, 08:44) *
mysql_set_charset('utf8', $$link);
Ou est-ce que tu rajoutes cela ?
Ma base est bien convertie en UTF-8, j'ai refait par dessus :
iconv -f iso-8859-1 -t utf-8 oscommerce.sql > oscommerce.utf8.sql
et les caractères s'affichent bien dans l'admin mais lorsque je vais sur phpmyadmin j'ai :
Champ 'From' d'un email envoyé
et dur dur de modifier la BDD en phpmyadmin sans passer par l'admin.
Pourtant dans la BDD de la version UTF-8 de oscommerce (http://addons.oscommerce.com/info/6857) les caractères y sont bien affichés.

Le but était d'avoir quelque chose de standard et écrire simplement les caractères accentués sans utiliser les &eacute; ....

Je vais refaire la procédure pour voir.

Ce message a été modifié par Dudule - 20 Oct 2013, 10:31.


--------------------
osCommerce Online Merchant v2.2 RC1 W3C Valid FR en prod en PHP5.2.14 chez O2Switch
Go to the top of the page
 
Dudule
posté 20 Oct 2013, 11:30
Message #4


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 196
Inscrit : 9-December 02
Lieu : Bordeaux
Membre no 654



Citation (Bonbec @ 20 Oct 2013, 08:44) *
Pour Mysql dans les fichiers de connexion à la bdd, j'avais ajouté ceci :
mysql_set_charset('utf8', $$link);


Je l'ai ajouté et ça marche.
Code
    if ($$link) mysql_select_db($database);
// début ajout
    mysql_query("SET NAMES 'UTF8'");
// fin ajout
    return $$link;
  }

Merci beaucoup une nouvelle fois.


--------------------
osCommerce Online Merchant v2.2 RC1 W3C Valid FR en prod en PHP5.2.14 chez O2Switch
Go to the top of the page
 
Bonbec
posté 20 Oct 2013, 19:57
Message #5


Ceinture marron OSC
Icône de groupe

Groupe : Modérateurs
Messages : 1464
Inscrit : 30-May 06
Lieu : Vichy (03)
Membre no 10583



Bonsoir,
Content de voir que tu t'en es sorti malgré mon absence de réponse à ta question, famille oblige.
N'oublie pas aussi l'admin pour le mysql_query("SET NAMES 'UTF8'");.


--------------------
Config 1 en live : Osc 2.2 très fortement modifié ... UTF-8 et Php 5.4.
Contribs installées : down_for_maintenance_v 2.3 | Estimated Shipping v1.5 | imprint_1_3_5 | low_stock_report_v2.04 | visible_countries_1.2b | Products Tabs | shoppingCart_cleanup_v1.01.0 | + trop de bidouilles persos pas très OsCommerce (erreurs de jeunesse)
Config 2 en local avec UwAmp : Osc 2.3.4 BS
Go to the top of the page
 
Dudule
posté 27 Oct 2013, 20:36
Message #6


Ceinture orange OSC
Icône de groupe

Groupe : Membres
Messages : 196
Inscrit : 9-December 02
Lieu : Bordeaux
Membre no 654



Salut,

J'ai fait les 2 en même temps.
En fait ça semble fonctionner sans convertir la DB mais juste en convertissant les fichiers de language et ajoutant mysql_query("SET NAMES 'UTF8'");.

Il ne me reste plus que régler le problème pour mes factures PDF mais je ne m'y suis pas encore penché dessus.

Encore merci.


--------------------
osCommerce Online Merchant v2.2 RC1 W3C Valid FR en prod en PHP5.2.14 chez O2Switch
Go to the top of the page
 
skieur
posté 31 May 2019, 12:02
Message #7


Ceinture jaune+ OSC
Icône de groupe

Groupe : Membres
Messages : 82
Inscrit : 7-January 09
Membre no 24145



Bonjour,
si çà peut servir a d'autres

select CONCAT('ALTER TABLE ', table_name, ' CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci ;') from information_schema.tables where table_schema= 'skitraceboutique'

puis copier coller le résultat penser à cocher dans les options teste complet à la place de réduit

select CONCAT('ALTER TABLE ', table_name, ' CHARACTER SET UTF8 ;') from information_schema.tables where table_schema= 'skitraceboutique'


--------------------
osCommerce Online Merchant v2.2 RC1 W3C Valid FR largement modifiée avec quelques codes perso et des contrib telles que mondial relay, editer facture, multi image, seo url, reclamaposteetc ...
Go to the top of the page
 

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



RSS Version bas débit Nous sommes le : 24th August 2019 - 09:20
Ce site est déclaré auprès de la commision Nationale
de l'Informatique et des Libertés (déclaration n°: 1043896)