Écrire une réponse

Veuillez écrire votre message et l'envoyer

Cliquez dans la zone sombre de l'image pour envoyer votre message.

Retour

Résumé de la discussion (messages les plus récents en premier)

Toomka
2010-05-24 20:43:10

Merci plg d'avoir répondu et désolé d'être passé par le mail, mais n'ayant pas eu de nouvelle réponse ici, je me suis dit que j'en aurai jamais.

Par contre peux tu me dire si il est possible de surcharger le code php (en gros ajouter la ligne manquante) via un plugin ?

h2o a écrit:

j'ai le même problème d'accent.

J'ai patché le fichier ws_functions.inc.php comme indiqué ci-dessus, ça m'a réglé le problème de l'affichage des accents des catégorie dans pLoader.

Par contre je ne peux pas créer une catégorie avec un accent (via pLoader), le nom se trouve tronqué à la première lettre accentuée.  (je crée donc des catégories sans accent que je vais corriger après via l'admin du site).

C'est bizarre que tu ne puisses créer correctement des catégorie avec accent via pLoader. Pour ma part je n'ai plus aucun problème d'accent depuis l'ajout de mysql_query("SET NAMES 'latin1'"); et encore moins de coupure de mot après le premier accent.

Question bête, -je n'ai aucune idée si ça une influence-, mais as-tu essayé (et peux tu) la version windows de pLoader ?

Tiens nous au courant si ça s'améliore.

h2o
2010-05-24 15:19:57

Bonjour,

j'ai le même problème d'accent.

J'ai patché le fichier ws_functions.inc.php comme indiqué ci-dessus, ça m'a réglé le problème de l'affichage des accents des catégorie dans pLoader.

Par contre je ne peux pas créer une catégorie avec un accent (via pLoader), le nom se trouve tronqué à la première lettre accentuée.  (je crée donc des catégories sans accent que je vais corriger après via l'admin du site).

plg
2010-05-24 15:08:17

Toomka m'a relancé par email pour savoir si on pouvait inclure cette modif dans le code de Piwigo.

Je suis pas super favorable car :
1) c'est spécifique à Free.fr (et encore, pas à tous les utilisateurs Free.fr)
2) c'est spécifique à MySQL

mettre un if (Free.fr and mysql), ça me gêne un peu quand même :-/

Toomka
2010-04-10 13:32:34

Vu que je suis têtu et que je n'aime pas rester sur un échec, j'ai cherché quelques solutions pour résoudre ce problème.
A priori, j'en ai trouvé une qui à l'air de bien fonctionner.
Il suffit d'éditer le fichier /include/ws_functions.inc.php et d'ajouter à la ligne 405 mysql_query("SET NAMES 'latin1'");

Ce qui donne (avec code avant et code après) :

Code:

$forbidden_categories = calculate_permissions($user['id'], $user['status']);
    $where[]= 'id NOT IN ('.$forbidden_categories.')';
    $join_type = 'LEFT';
  }

  mysql_query("SET NAMES 'latin1'");

  $query = '
SELECT id, name, permalink, uppercats, global_rank,
    nb_images, count_images AS total_nb_images,
    date_last, max_date_last, count_categories AS nb_categories
  FROM '.CATEGORIES_TABLE.'
   '.$join_type.' JOIN '.USER_CACHE_CATEGORIES_TABLE.' ON id=cat_id AND user_id='.$join_user.'
  WHERE '. implode('
    AND ', $where);
  $result = pwg_query($query);

En attente de savoir ce que vous en pensez.

Passez un bon week end.


PS : pour moi ça fonctionne très bien, en lecture et en écriture dans pLoader et aussi en visualisation des accents dans piwigo

Toomka
2010-04-06 22:41:49

VDigital a écrit:

"é" sur mes sites free également en PHP/5.1.3RC4-dev

=> Et comme pour Whois Online, je connais également la solution, tu peux me fermer mon compte.

;-)

Merci pour le boulot Vincent ;)


PS : Pour whois j'ai enlevé ma rustine et j'ai juste remplacé en attendant la fonction fgets par fgetss comme ça plus de balises HTML (et donc d'erreur qui casse la mise en page).

VDigital
2010-04-06 22:36:40

"é" sur mes sites free également en PHP/5.1.3RC4-dev

=> Et comme pour Whois Online, je connais également la solution, tu peux me fermer mon compte.

;-)

Toomka
2010-04-06 21:25:11

Vu que le problème a l'air résolu jusqu'à la mise à jour de PHP par free (et la on risque d'attendre un bon moment), avez-vous toujours besoin de l'accès à mon site ?
Je pense que je vais pas tarder à tout réinstaller, question de repartir sur du propre.

Merci pour le temps passé pour ce problème.
Bonne soirée.

nicolas
2010-04-06 16:56:52

VDigital a écrit:

+1 sur la conclusion (Je teste ce soir si j'ai un résultat similaire sur mes sites free, surtout si par chance j'en avais un en autre chose que PHP/5.1.3RC4-dev).

Quand même quelle idée bizarre de mettre des RC (Releases Candidates) à disposition des sites de leur client !

( C'est sans doute ce qu'on appelle le FreeStyle, non ? )

Surtout que la cette version a été compilé plus d'un an et demi après sa sortie. Sur mon espace elle date de novembre 2007 et à cette date la version 5.2.0 stable était disponible.

VDigital
2010-04-06 16:26:37

+1 sur la conclusion (Je teste ce soir si j'ai un résultat similaire sur mes sites free, surtout si par chance j'en avais un en autre chose que PHP/5.1.3RC4-dev).

Quand même quelle idée bizarre de mettre des RC (Releases Candidates) à disposition des sites de leur client !

( C'est sans doute ce qu'on appelle le FreeStyle, non ? )

plg
2010-04-06 14:58:25

Bon désolé, mais si le problème est uniquement chez Free.fr, que partout ailleurs ça marche bien, il faudrait voir avec le support Free.fr s'ils ont des idées parce que là on patauge pour la nieme fois avec Free.fr :-/

plg
2010-04-06 14:04:40

Toomka a écrit:

plg a écrit:

Petite piste : l'encodage JSON fait pour transmettre les données à pLoader.

Oui mais pourquoi poserait il uniquement des problèmes sur free (j'ai pas eu de problème sur ovh), c'est bizarre quand même ?!!!

C'est pas ça. J'ai essayé en demandant de la serialisation PHP à la place de JSON et même problème.

Et pour répondre à ta question sur l'encoding définit dans le header HTTP:

Code:

                 '_headers' => bless( {
                                        'connection' => 'close',
                                        'x-powered-by' => 'PHP/5.1.3RC4-dev',
                                        'client-response-num' => 1,
                                        'cache-control' => 'no-store, no-cache, must-revalidate, post-check=0, pre-check=0',
                                        'date' => 'Tue, 06 Apr 2010 11:50:29 GMT',
                                        'client-peer' => '212.27.63.136:80',
                                        'client-date' => 'Tue, 06 Apr 2010 11:50:29 GMT',
                                        'pragma' => 'no-cache',
                                        'content-type' => 'text/plain; charset=utf-8',
                                        'server' => 'Apache/ProXad [Aug  9 2008 02:45:09]',
                                        'expires' => 'Thu, 19 Nov 1981 08:52:00 GMT'
                                      }, 'HTTP::Headers' ),

Pourquoi ça pourrait être en erreur chez free et pas ailleurs. Peut-être à cause de la version de PHP : 5.1.3RC4, c'est sans doute pas le top pour un serveur de prod. Mais je n'en sais rien, ça n'a peut-être aucun rapport.

Toomka
2010-04-06 14:00:39

plg a écrit:

Petite piste : l'encodage JSON fait pour transmettre les données à pLoader.

Oui mais pourquoi poserait il uniquement des problèmes sur free (j'ai pas eu de problème sur ovh), c'est bizarre quand même ?!!!

plg
2010-04-06 13:58:38

Petite piste : l'encodage JSON fait pour transmettre les données à pLoader.

Toomka
2010-04-06 13:52:47

Merci VDigital pour ta précision. Cependant le problème ne pourrait pas venir des entêtes envoyées par les serveurs de free ?

A priori quand je fais une récupération des entêtes j'ai :

Code:

HTTP/1.1 200 OK
Date: Tue, 06 Apr 2010 11:40:20 GMT
Server: Apache/ProXad [Aug  9 2008 02:45:09]
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Pragma: no-cache
X-Powered-By: PHP/5.1.3RC4-dev
Set-Cookie: pwg_id=xxx34fc8; path=/
Connection: close
Content-Type: text/html; charset=utf-8

par contre est-ce-que avec pLoader je n'aurai pas une ligne du genre :

Code:

Content-Type: text/html; charset=ISO-8859-1

Je continu pour voir si j'ai le problème sur ovh (je pense que non).
Réponse dans quelques minutes, après j'attaque le snif des connexions fait avec pLoader.

VDigital
2010-04-06 13:46:19

Toomka a écrit:

Merci pour la réponse.
Bon bah j'ai pas touché à ce fichier et j'ai eu le problème avant d'avoir modifier piwigo (surtout du tpl).

Ce qui est étrange c'est le fait qu'il affiche les catégories comme si c'était de l'iso (affichage iso de l'utf8 -> "é", "î", "Ã")

Cette forme d'affichage correspondrait bien à des données ISO rencontrées dans des colonnes définies en utf-8, à mon avis (je n'ai pas fait de recherche sur le web, elles ne sont pas faciles à faire).

Cependant, je ne pense pas que cela soit réellement le cas présent car - si tu as bien fait une installation - la structure a été dès le départ créée pour gérer de l'utf-8. Les données insérés sont donc naturellement converties dès leur inscription dans la base (il ne serait donc pas question qu'elles soit en ISO).
Par ailleurs, les données ISO ne sont pas converties en UTF-8 à la lecture, et de ce fait, tu devrais avoir ce type d'affichage ("é", "î", "Ã") tout autant dans la galerie et sa partie Administration.
Or, ce n'est pas le cas. Lorsque la base n'a pas été proprement convertie, cela se voit très vite dès le premier accent.
C'est pourquoi, j'ai considéré que le pb n'était pas coté galerie.

Par contre, si ce n'est pas installation mais une migration (depuis 1.7.x ou précédentes), alors on peut clairement rencontrer ce problème de base mal convertie.
En règle générale, il s'agit d'un problème lors de l'exécution de la mise à jour 65.
Je n'ai malheureusement pas identifié le cas qui pouvait faire échec à cette opération.

En espérant que cela puisse aider.
;-)

Pied de page des forums

Propulsé par FluxBB

github twitter newsletter Faire un don Piwigo.org © 2002-2024 · Contact