Patch de correction v5.2.xx
MickaelFR Membre non connecté
Booster Fusée
-
Booster Fusée
- Voir le profil du membre MickaelFR
- Inscrit le : 20/01/2014
- Site internet
- Groupes :
Suite à un problème avec la "bibliographie", il c'est avéré que le USER, prenait mal en compte l'unicode, ce qui occasionnait une FATAL ERROR, selon les caractères utilisés "en masse".
Après plusieurs recherche de Myster, il a fini par me faire un patch, que je partage ici !
Il y a deux fichiers à remplacer !
./kernel/framework/helper/TextHelper.class.php
et
./kernel/framework/phpboost/user/session/SessionData.class.php
Le lien vers les fichiers (car on ne peut pas uploader du PHP) : https://drive.google.com/drive/folders/1uCivPnVPtBuyTS-17wZYnXHGkxB6b7Nc?usp=sharing
Merci à lui pour ses recherches
Édité par MickaelFR Le 16/03/2025 à 17h18
Myster Membre non connecté
Booster Missile
-
Booster Missile
- Voir le profil du membre Myster
- Inscrit le : 04/10/2010
- Groupes :
Le patch corrige ce problème en modifiant la fonction init_from_row dans SessionData.class.php, qui est responsable de la reconstruction des données de session. Il recalcule la longueur correcte en octets de chaque chaîne avant de la désérialiser, ce qui permet de gérer correctement tous les types de caractères.
Le patch inclut aussi une protection pour éviter que le site plante complètement si la désérialisation échoue quand même.
babsolune Membre non connecté
-
Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
-
Equipe Développement
En attendant l'avis du chef, le SessionData.class.php nouvelle version a perdu toute son indentation par rapport à la version github, pas facile de voir le diff

MickaelFR :Suite à un problème avec la "bibliographie"
c'est un champ texte que tu as ajouté dans le profil de tes utilisateurs ?
c'est pour avoir un axe de recherche et tester si le problème existe en 6.0
MickaelFR Membre non connecté
Booster Fusée
-
Booster Fusée
- Voir le profil du membre MickaelFR
- Inscrit le : 20/01/2014
- Site internet
- Groupes :
babsolune :
En attendant l'avis du chef, le SessionData.class.php nouvelle version a perdu toute son indentation par rapport à la version github, pas facile de voir le diff
MickaelFR :Suite à un problème avec la "bibliographie"
c'est un champ texte que tu as ajouté dans le profil de tes utilisateurs ?
c'est pour avoir un axe de recherche et tester si le problème existe en 6.0
Salut.
D'origine, ou création, c'est la même chose
Mipel Membre non connecté
-
Administrateur
- Voir le profil du membre Mipel
- Inscrit le : 04/04/2016
- Site internet
- Groupes :
-
Equipe Rédaction
-
Equipe Modération
Nous n'avons pas pu reproduire ce bug et donc pas pu vérifier l'application du patch.
Il nous faudrait des précisions :
- version de php
- version et moteur SQL
- type de champ utilisé dans le profil (existant ou ajouté ?), texte long, court ?
- nature de l'information saisie dans le champ (caractères accentués ou spéciaux, icônes html, smileys...)
Selon nos constations, des valeurs courantes saisies dans un champ du profil d'un user sont bien sérialisées dans "cached_data" de la table "session", il nous faudrait connaître précisément le contexte qui génère ce bug ainsi que le message d'erreur associé.
Merci d'avance,
Merci de penser à joindre le rapport système de votre site, il peut nous aider à mieux répondre à vos questions.
MickaelFR Membre non connecté
Booster Fusée
-
Booster Fusée
- Voir le profil du membre MickaelFR
- Inscrit le : 20/01/2014
- Site internet
- Groupes :
J'ai donné la plupart des informations avec Myster.
Php 8.0 - mysqli / mysqlnd 8.0.30
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie
