Problème d'encodage avec UTF-8 dans Joomla 1.5
Moderator: sarki
Forum rules
Règles du forum
Règles du forum
-
- Joomla! Apprentice
- Posts: 26
- Joined: Fri Aug 17, 2007 12:06 pm
- Location: France (62)
Problème d'encodage avec UTF-8 dans Joomla 1.5
Bonjour à tous,
J'ai un soucis avec l'utf-8 et le latin1... Jusqu'à présent mes fichiers php codées "en dur" et enregistrés en ANSI provoquaient des problemes d'affichage. (accents remplacés par des points d'interrogations). J'ai compris que cela venait du fait que Joomla 1.5 règle le header de chaque page HTML en utf-8.
Bref, j'ai converti mes fichiers php en utf-8 et là c'est bon, ça marche. (je sais que si j'utilisais des fichiers de traduction pour mon composant, j'aurais juste à convertir les fichiers de langue en utf-8. Pb: je sais pas comment faire pour ajouter des fichiers langues à mon composant )
Le soucis, c'est avec ma base de donnée. Lorsque j'installe le composant que je développe et que Joomla importe le 'install.sql', j'ai plusieurs problèmes:
- Si le fichier install.sql est encodé en utf-8, Joomla me retourne une erreur lors de l'installation du composant: "JInstaller::install: Erreur SQL. DB function failed with error number 1064" et refuse de l'installer...
- S'il est codé normalement, 2 cas de figures:
* Mes tables sont en utf-8: Tous les contenus des champs sont coupés au premier accent. (ex: "Mathématiques" se retrouve stocké dans la base en tant que "Math")
* Mes tables sont en latin1: Les accents sont remplacés par des points d'interrogation DANS la base de donnée
Bref, je n'arrive pas à remplir mes tables avec des données contenant un accent par l'intermédiaire du fichier d'installation. J'y comprends plus rien, et je n'arrive pas à déterminer où intervenir...
Pouvez-vous m'aider ?
Merci beaucoup !
Manu
J'ai un soucis avec l'utf-8 et le latin1... Jusqu'à présent mes fichiers php codées "en dur" et enregistrés en ANSI provoquaient des problemes d'affichage. (accents remplacés par des points d'interrogations). J'ai compris que cela venait du fait que Joomla 1.5 règle le header de chaque page HTML en utf-8.
Bref, j'ai converti mes fichiers php en utf-8 et là c'est bon, ça marche. (je sais que si j'utilisais des fichiers de traduction pour mon composant, j'aurais juste à convertir les fichiers de langue en utf-8. Pb: je sais pas comment faire pour ajouter des fichiers langues à mon composant )
Le soucis, c'est avec ma base de donnée. Lorsque j'installe le composant que je développe et que Joomla importe le 'install.sql', j'ai plusieurs problèmes:
- Si le fichier install.sql est encodé en utf-8, Joomla me retourne une erreur lors de l'installation du composant: "JInstaller::install: Erreur SQL. DB function failed with error number 1064" et refuse de l'installer...
- S'il est codé normalement, 2 cas de figures:
* Mes tables sont en utf-8: Tous les contenus des champs sont coupés au premier accent. (ex: "Mathématiques" se retrouve stocké dans la base en tant que "Math")
* Mes tables sont en latin1: Les accents sont remplacés par des points d'interrogation DANS la base de donnée
Bref, je n'arrive pas à remplir mes tables avec des données contenant un accent par l'intermédiaire du fichier d'installation. J'y comprends plus rien, et je n'arrive pas à déterminer où intervenir...
Pouvez-vous m'aider ?
Merci beaucoup !
Manu
- infograf768
- Joomla! Master
- Posts: 19133
- Joined: Fri Aug 12, 2005 3:47 pm
- Location: **Translation Matters**
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
Ne devriez-vous pas inclure les appels sql dans le fichier xml d'installation?
Qui, lui, doit être en utf8 NO BOM, comme tous les autres fichiers dans 1.5.
Nous aurons sans doute bientôt un tutorial sur la façon de créer les fichiers de langue ini pour les extensions.
Qui, lui, doit être en utf8 NO BOM, comme tous les autres fichiers dans 1.5.
Nous aurons sans doute bientôt un tutorial sur la façon de créer les fichiers de langue ini pour les extensions.
Jean-Marie Simonet / infograf
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
-
- Joomla! Apprentice
- Posts: 26
- Joined: Fri Aug 17, 2007 12:06 pm
- Location: France (62)
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
Ben en fait, mon fichier xml d'installation appelle le fichier install.sql (exactement comme dans le tuto MVC Hello World). Vous voulez dire que je devrais écrire directement mes requetes sql dans le xml ?infograf768 wrote: Ne devriez-vous pas inclure les appels sql dans le fichier xml d'installation?
Ou bien peut-être que j'ai encodé simplement en utf-8, et pas en NO BOM... Je vais faire des essais ce soir et vous tiendrai au courant.
Vous voulez dire que TOUS les fichiers de mon composant doivent être encodés en utf-8 NO BOM ?infograf768 wrote: comme tous les autres fichiers dans 1.5.
En tout cas, merci de votre réponse.
Mnu
-
- Joomla! Apprentice
- Posts: 26
- Joined: Fri Aug 17, 2007 12:06 pm
- Location: France (62)
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
C'est bon... en fait, mon fichier sql devait probablement être encodé en utf-8 avec BOM, résultat, ça ne fonctionnait pas...
Ultraedit ne reconnaissant pas ce format d'encodage (du moins, d'après mes tests), j'ai changé pour PSPad (qui en plus est open source). Et là, ça marche sans problème...
Merci donc pour ces informations...
Une dernière petite question: faut-il que toutes les tables de la base soient codées en utf8 ? Je me pose la question parce que toutes les tables créées lors de l'installation de Joomla 1.5 sont en latin1. Si quelqu'un a la réponse...
Bon, y'a plus qu'à attendre le tuto sur la gestions des langages dans les composants...
Mnu
Ultraedit ne reconnaissant pas ce format d'encodage (du moins, d'après mes tests), j'ai changé pour PSPad (qui en plus est open source). Et là, ça marche sans problème...
Merci donc pour ces informations...
Une dernière petite question: faut-il que toutes les tables de la base soient codées en utf8 ? Je me pose la question parce que toutes les tables créées lors de l'installation de Joomla 1.5 sont en latin1. Si quelqu'un a la réponse...
Bon, y'a plus qu'à attendre le tuto sur la gestions des langages dans les composants...
Mnu
- infograf768
- Joomla! Master
- Posts: 19133
- Joined: Fri Aug 12, 2005 3:47 pm
- Location: **Translation Matters**
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
sample data
Mais si un joomla.sql est créé spécialement pour une distrib japonaise, russe, arabe, etc. il devrait être utf8 NO BOM.
Toutes les tables de la base doivent en effet être utf8. Elles sont créées ainsi au moment de l'installation.
joomla.sql ne contient par défaut que des caractéres Latin1 pour la création des tables Gb. Donc pas de probléme.# $Id: sample_data.sql 6152 2007-01-02 10:43:45Z louis $
#
# IMPORTANT - THIS FILE MUST BE SAVED WITH UTF-8 ENCODING ONLY. BEWARE IF EDITING!
#
--
-- Dumping data for table `#__banner`
Mais si un joomla.sql est créé spécialement pour une distrib japonaise, russe, arabe, etc. il devrait être utf8 NO BOM.
Toutes les tables de la base doivent en effet être utf8. Elles sont créées ainsi au moment de l'installation.
PRIMARY KEY (`id`)
) TYPE=MyISAM CHARACTER SET `utf8`;
Jean-Marie Simonet / infograf
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
-
- Joomla! Apprentice
- Posts: 26
- Joined: Fri Aug 17, 2007 12:06 pm
- Location: France (62)
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
OK, merci....
Il me semble que tout devient clair... ou presque: qu'en est-il des fichiers php ? (et tous les autres). Faut-il les convertir aussi en utf-8 ? J'ai lu ici et là que php 5 avait des soucis avec la gestion de l'utf-8... Du coup, j'ai comme un doute...
Je dirais bien que oui, il faut les convertir, puisque l'utf-8, c'est l'avenir, mais j'ai quand même un doute...
Merci à vous en tout cas... (et à tous les membres de la communauté joomla, d'ailleurs... c'est quand même du gros boulot ! )
Mnu
Il me semble que tout devient clair... ou presque: qu'en est-il des fichiers php ? (et tous les autres). Faut-il les convertir aussi en utf-8 ? J'ai lu ici et là que php 5 avait des soucis avec la gestion de l'utf-8... Du coup, j'ai comme un doute...
Je dirais bien que oui, il faut les convertir, puisque l'utf-8, c'est l'avenir, mais j'ai quand même un doute...
Merci à vous en tout cas... (et à tous les membres de la communauté joomla, d'ailleurs... c'est quand même du gros boulot ! )
Mnu
- infograf768
- Joomla! Master
- Posts: 19133
- Joined: Fri Aug 12, 2005 3:47 pm
- Location: **Translation Matters**
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
PHP5 a beaucoup moins de soucis avec UTF8 que les versions antérieures grâce à iconiv.
En fait, une importante partie du code Core de Joomla 1.5 consiste à permettre d'utiliser l'UTF8 sur du MySQl et du PHP anciens de façon transparente à l'utilisateur.
En fait, une importante partie du code Core de Joomla 1.5 consiste à permettre d'utiliser l'UTF8 sur du MySQl et du PHP anciens de façon transparente à l'utilisateur.
Jean-Marie Simonet / infograf
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
- infograf768
- Joomla! Master
- Posts: 19133
- Joined: Fri Aug 12, 2005 3:47 pm
- Location: **Translation Matters**
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
En fait, j'ai trouvé ici http://dev.joomla.org/component/option, ... stallfile/ la façon d'ajouter des fichiers de langue en admin et site.
Pour que toutes les langues puissent créer un fichier ad-hoc, il est nécessaire de mettre au moins un fichier langue en-GB.
Le composant Language Translator de Igevans trouvera la référence.
Il vous faudra donc créer les strings nécessaires dans le code, du type
Merci de rendre votre composant dispo aux utilisateurs.
Pour que toutes les langues puissent créer un fichier ad-hoc, il est nécessaire de mettre au moins un fichier langue en-GB.
Le composant Language Translator de Igevans trouvera la référence.
Il vous faudra donc créer les strings nécessaires dans le code, du type
Merci de rendre votre composant dispo aux utilisateurs.
Jean-Marie Simonet / infograf
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
-
- Joomla! Apprentice
- Posts: 26
- Joined: Fri Aug 17, 2007 12:06 pm
- Location: France (62)
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
Merci pour tous vos renseignements...
MAis il me reste un petit soucis: après installation, mes fichiers langues sont bien crées dans /language/en-GB/, /language/fr-FR/, /administrator/language/en-GB/ et /administrator/language/fr-FR/ sous les noms suivants: en-GB.com_moncomposant.ini et fr-FR.com_moncomposant.ini. J'ai bien récupéré la syntaxe des fichiers langues qui existent déjà àdroite à gauche.
MAIS, lorsque j'installe mon composant, il ne fait pas la connexion avec ces fichiers langues donc je me trouve avec les textes génériques sur mes pages... Exemple, JText::_("TEXTE_ACCUEIL") retourne TEXTE_ACCUEIL, et pas la traduction...
Aurais-je oublié de spécifier une référence au fichier langue quelque part ?
De toute façon, quand j'aurai terminé, je le partagerai de toute façon, par principe Mais bon, vu que je fais pas ça à plein temps, c'est pas pour tout de suite...
Mnu
MAis il me reste un petit soucis: après installation, mes fichiers langues sont bien crées dans /language/en-GB/, /language/fr-FR/, /administrator/language/en-GB/ et /administrator/language/fr-FR/ sous les noms suivants: en-GB.com_moncomposant.ini et fr-FR.com_moncomposant.ini. J'ai bien récupéré la syntaxe des fichiers langues qui existent déjà àdroite à gauche.
MAIS, lorsque j'installe mon composant, il ne fait pas la connexion avec ces fichiers langues donc je me trouve avec les textes génériques sur mes pages... Exemple, JText::_("TEXTE_ACCUEIL") retourne TEXTE_ACCUEIL, et pas la traduction...
Aurais-je oublié de spécifier une référence au fichier langue quelque part ?
Sans aucun problème, mais je doute que ça intéresse beaucoup de monde, vu qu'il s'agit d'un composant dont le but est d'archiver et de partager des ressources pédagogiques entre enseignants... C'est donc très spécifique...infograf768 wrote: Merci de rendre votre composant dispo aux utilisateurs.
De toute façon, quand j'aurai terminé, je le partagerai de toute façon, par principe Mais bon, vu que je fais pas ça à plein temps, c'est pas pour tout de suite...
Mnu
Last edited by Mnu on Tue Aug 21, 2007 8:21 am, edited 1 time in total.
-
- Joomla! Fledgling
- Posts: 4
- Joined: Wed Oct 01, 2008 9:52 pm
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
Bonjour à tous,MAIS, lorsque j'installe mon composant, il ne fait pas la connexion avec ces fichiers langues donc je me trouve avec les textes génériques sur mes pages... Exemple, JText::_("TEXTE_ACCUEIL") retourne TEXTE_ACCUEIL, et pas la traduction...
j'ai exactement ce problème... quelle peut être la cause ?
Merci d'avance
- infograf768
- Joomla! Master
- Posts: 19133
- Joined: Fri Aug 12, 2005 3:47 pm
- Location: **Translation Matters**
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
Vous postez dans un très ancien sujet. Tout ceci est normalement résolu dans la version courante 1.5.7.zapgillou wrote:Bonjour à tous,MAIS, lorsque j'installe mon composant, il ne fait pas la connexion avec ces fichiers langues donc je me trouve avec les textes génériques sur mes pages... Exemple, JText::_("TEXTE_ACCUEIL") retourne TEXTE_ACCUEIL, et pas la traduction...
j'ai exactement ce problème... quelle peut être la cause ?
Merci d'avance
Impossible de vous aider sans installer moi-même le composant.
Merci de le joindre ici comme pièce attachée.
Jean-Marie Simonet / infograf
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
-
- Joomla! Fledgling
- Posts: 4
- Joined: Wed Oct 01, 2008 9:52 pm
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
Merci pour votre réponse.
J'ai mis mon brouillon de composant en PJ, il s'agit de la ligne suivante :
dans le fichier hamlogweb.php (partie frontend).
Soyez indulgents... j'ai quelques notions php/mysql mais zéro notion joomla... du moins je débute ! Je pensais obtenir des informations sur le développement de composants dans un bouquin que j'ai acheté mais malheureusement seules quelques pages traitent de ce thème...
Merci par avance pour votre aide
J'ai mis mon brouillon de composant en PJ, il s'agit de la ligne suivante :
Code: Select all
echo JText::_('RECHERCHE_DE');
Soyez indulgents... j'ai quelques notions php/mysql mais zéro notion joomla... du moins je débute ! Je pensais obtenir des informations sur le développement de composants dans un bouquin que j'ai acheté mais malheureusement seules quelques pages traitent de ce thème...
Merci par avance pour votre aide
You do not have the required permissions to view the files attached to this post.
-
- Joomla! Fledgling
- Posts: 4
- Joined: Wed Oct 01, 2008 9:52 pm
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
J'ai cru devenir fou...
Si je mets une ligne blanche dans mes fichiers langue et que j'attaque la définition des chaines à la 2ème ligne, ça fonctionne... pourquoi ?
Si je mets une ligne blanche dans mes fichiers langue et que j'attaque la définition des chaines à la 2ème ligne, ça fonctionne... pourquoi ?
- infograf768
- Joomla! Master
- Posts: 19133
- Joined: Fri Aug 12, 2005 3:47 pm
- Location: **Translation Matters**
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
Aucune idée...
J'ai testé ici en modifiant des fichiers ini sans aucun souci (sauvegardés sous utf8 No Bom)
J'ai testé ici en modifiant des fichiers ini sans aucun souci (sauvegardés sous utf8 No Bom)
Jean-Marie Simonet / infograf
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
---------------------------------
ex-Joomla Translation Coordination Team • ex-Joomla! Production Working Group
- pelloq1
- Joomla! Enthusiast
- Posts: 145
- Joined: Sat Dec 16, 2006 7:42 am
- Location: Switzerland
Re: Problème d'encodage avec UTF-8 dans Joomla 1.5
Merci infograf768, tu m'as mis sur la bonne voie :
http://forum.joomla.org/posting.php?mod ... 0&t=662532
;-)
http://forum.joomla.org/posting.php?mod ... 0&t=662532
;-)
Z. Rick
http://www.myjoom.com quality joomla extensions
http://extensions.joomla.org/extensions/owner/pelloq1
http://www.myjoom.com quality joomla extensions
http://extensions.joomla.org/extensions/owner/pelloq1