Fork me on GitHub




(1) 2 3 4 ... 6 »


Xoops 2.4.3 et codes UTF numériques
Semi pro
Inscrit: 18/12/2005 13:29
De Rebstein - Suisse
Messages: 517
Bonjour.

Je viens de faire une mise à jour vers xoops 2.4.3 et j'ai un problème d'affichage avec les codes numériques.

Par exemple avec le module profile j'ai Nom réel qui s'affiche avec Nom R&"eacute";el (j'ai mis les guillemets pour l'affichage dans le post) et ainsi de suite dans la page.

Même problème avec MPManager. Et dans l'administration le nom des modules était également "écrit" en caractères numériques (notamment Système).

J'ai mis à jour les modules, vidé les caches et testé avec le thème "défaut". Mais, par mesure de sécurité, je n'ai pas mis à jour les autres modules que ceux inclus dans la mise à jour de peur d'avoir également un affichage incorrect.

En mode debug, j'ai ceci :
Citation :
0.000082 - SET NAMES 'UTF-8'
Error number: 1115
Error message: Unknown character set: 'UTF-8'


Que dois-je faire pour obtenir un affichage correct sans réécrire les fichiers de langue en clair, avec les accents ? J'ai oublié quelque chose ?

Ma configuration :
Version de XOOPS XOOPS 2.4.3
Version de PHP 5.2.11
Version de mySQL 5.0.84-log
Site et base de données en UTF-8
Hébergeur Infomaniak, mais même problème en local.

Merci de votre aide et à bientôt.

Posté le : 03/01/2010 22:16
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Supporter Xoops
Inscrit: 09/01/2005 13:37
De Breizh
Messages: 16972
Bonjour,

Je viens de mettre un pack des fichiers de langue française utf8 de la 2.4.3 sur sourceforge (https://sourceforge.net/projects/xfr/files/), mets les à la place de tes existants puis procède à la mise à jour des modules system, pm et profile

@+

Posté le : 03/01/2010 23:32

La connaissance s'accroît quand on la partage ...
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Semi pro
Inscrit: 18/12/2005 13:29
De Rebstein - Suisse
Messages: 517
Bonjour.

@ Kris :

Je suis désolé mais le changement des fichiers langues du système et des modules system, pm et profile n'a rien amélioré. L'affichage se fait toujours avec les codes UTF.(juste pour info, en comparant le contenu avec les anciens, à part la version, rien ne change).

Ce qui m'étonne, c'est que ça marchait très bien avec la version 2.4.2 mais plus avec la 2.4.3

De plus, j'ai essayé de passer le site en anglais pour voir et l'affichage des textes qui étaient en français avec un mauvais affichage restent en français avec cet affichage incorrect (testé avec module profile). Le reste est bien en anglais. Surprenant non ?

Voilà la situation actuelle chez moi. D'autres sont-ils déjà passés sans problème à la version 2.4.3 avec un site en UTF-8 ?

Merci de vos retours d'information et à bientôt pour une solution.

Cordialement.
Raymond

Posté le : 04/01/2010 18:15
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Semi pro
Inscrit: 18/12/2005 13:29
De Rebstein - Suisse
Messages: 517
Pour en avoir le coeur net, j'ai fait une installation toute propre en local avec une version complète de la 2.4.3

Résultat : problème identique à celui de la mise à jour

Solution (provisoire ?) : garder l'ancien fichier /class/module.textsanitizer.php

Question aux développeurs : il y a quelle différence entre ces deux fichiers qui provoque cette incompatibilité de lecture des caractères UTF numériques ?

Bref, maintenant tout fonctionne nickel et j'adresse un grand merci à toute l'équipe xoops pour tout le travail réalisé.

Cordialement.
Raymond

Posté le : 04/01/2010 19:26
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Aspirant
Inscrit: 08/09/2008 14:45
Messages: 35
Replace mainfile.php
define('XOOPS_DB_CHARSET''UTF-8');

Par
define('XOOPS_DB_CHARSET''utf8');

Posté le : 04/01/2010 21:22
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Semi pro
Inscrit: 18/12/2005 13:29
De Rebstein - Suisse
Messages: 517
Hello trabis.

Dans le mainfile.php de la version 2.4.3 complète, c'est déjà "utf8" qui vient par défaut.

Donc le problème est ailleurs.

Peut-être dans module.textsanitizer.php à la ligne 605 (respectivement 606) ?

code de la 2.4.3
$replacements "'<div class="xoopsCode">'.$this->executeExtension('syntaxhighlight', str_replace('\"', '"', base64_decode('$2')), '$1').'</div>'";


code de la 2.4.2
$replacements "'<div class="xoopsCode"><code>'.$this->executeExtension('syntaxhighlight', $this->htmlSpecialChars(str_replace('\"', '"', base64_decode('$2'))), '$1').'</code></div>'";


En tout cas, avec le fichier module.textsanitizer,php de la 2.4.2, ça fonctionne très bien.

A+

Posté le : 04/01/2010 21:39
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Semi pro
Inscrit: 18/12/2005 13:29
De Rebstein - Suisse
Messages: 517
En fait, c'est la ligne 484 du fichier /class/module.textsanitizer.php qu'il faut modifier.

J'ai commenté return $text; et mis ce code de la 2.4.2 :
return preg_replace(array('/&/i' '/&nbsp;/i'), array('&' '&nbsp;'), $text);
/*return $text;*/


et ça marche.

Le "return" de la 2.4.3 ne semble pas fonctionner correctement avec ma version de PHP (version 5.2.11).

@ trabis : cette modification est valable uniquement pour PHP 5.2.11 ou pour toutes les versions < que 5.2.3 ?

EDIT du 17.1.2010 :

pour avoir le "vrai" code, compatible avec affichage bbcode du forum, voir ce post.

Posté le : 04/01/2010 22:09
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Aspirant
Inscrit: 08/09/2008 14:45
Messages: 35
Hum, je crois que le problème est on la traduction française de Xoops.
define('_US_REALNAME','Nom R&#233;el');


C'est ne pas utf8 :(

I'm sorry, I will speak in engish:

Xoops 2.4.3 code is correct, do not change it. The translation done by french team will not work in 2.4.3. The use of htmlspecial chars is reserved for output and should not be saved into database. Xoops 2.4.3 will display it exactly has it is on database.

Let me post here the same sentece I posted in the code box:

define('_US_REALNAME','Nom Réel');

You see? Xoops changed it automatically by reverting the & a m p ; character which is wrong. This sentece should display just like in the code box. That is the correct behavior and that is how it behaves in a 2.4.3 site and that is why french translation is not working anymore.

Posté le : 05/01/2010 01:43
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Supporter Xoops
Inscrit: 09/01/2005 13:37
De Breizh
Messages: 16972

Posté le : 05/01/2010 08:57

La connaissance s'accroît quand on la partage ...
Partager Twitter Partagez cette article sur GG+
Re: Xoops 2.4.3 et codes UTF numériques
Supporter Xoops
Inscrit: 09/01/2005 13:37
De Breizh
Messages: 16972
Citation :

pourquoi le "é" coupe le lien ?
why the "é" cut the link?

Posté le : 05/01/2010 08:58

La connaissance s'accroît quand on la partage ...
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 3 4 ... 6 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

32 Personne(s) en ligne (26 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 32 | Plus ...