Re: Menus : migration défectueuse
Maïeul Rouquette <[email protected]>
| Newsgroups | gmane.comp.web.spip.devel |
|---|---|
| Message-ID | <[email protected]> |
Le 01/06/2020 à 22:21, Stephane Santon a écrit :
> Bonsoir,
>
> Le 01/06/2020 à 14:43, Stephane Santon a écrit :
>> Un truc bizarre.
>> J'ai importé une base SPIP 3.2.7 avec menus 1.6.11 vers un site neuf
>> 3.2.7 et menus 1.7.25.
>>
>> Mon menu n'apparaît plus.
>> Quand je vais l'éditer dans l'espace privé, j'ai bien mes 7 entrées
>> définies, mais en éditant chaque entrée, tous les champs sont vides !
>>
>> Et dans la base par phpMyAdmin, j'ai bien mes données dedans...
>
> En fait c'est un problème d'encodage de caractères.
> Dans ma base d'origine j'avais des infos de champ 'parametres' de table
> menu-entrees telles que :
>
> a:4:{s:5:"titre";s:27:"Héberg. et Restaurat°
> â–¶";s:3:"url";s:61:"https://[...]";s:3:"css";s:0:"";s:8:"css_lien";s:0:"";}
>
>
> A la mutation sur le nouveau site, j'ai converti toutes les tables en
> utf-8, ce qui a donné :
>
> a:4:{s:5:"titre";s:27:"Héberg. et Restaurat°
> ▶";s:3:"url";s:61:"https://[...]";s:3:"css";s:0:"";s:8:"css_lien";s:0:"";}
>
> Le nouveau codage comprend moins de caractères, mais la chaine JSON n'a
> pas été mise à jour sur son champ s:27 qui aurait dû passer à s:24
>
> Résultat : tous les champs retournent des valeurs vides, même dans
> l'espace privé :
>
> https://www.cjoint.com/c/JFbutOS8ksB
>
>
arf oui c'est la plaie. c'est précisement pas de l'encodage json (qui
n'est pas sensible à cela) mais de l'encodage php ((un)serialize).
Et l'encodage php est très sensible à cela, contrairement à l'encodage json.
Tu peux trouver sur internet des infos sur comment "restaurer" une
serializaion mal foutu...
_______________________________________________
liste: https://listes.rezo.net/mailman/listinfo/spip-dev
doc: https://www.spip.net/
dev: https://core.spip.net/
irc://irc.freenode.net/spip