|
newbb pièces jointes de vieux posts |
|
Régulier
Inscrit: 04/02/2003 08:53
De Paris
|
Bonjour, Un problème pas facile j'imagine. Mon forum date en gros des années 2000, sans perte d'info. Evidemment le noyau et le module newbb on été mis à jour plusieurs fois depuis toutes ces années. Je viens de m’apercevoir que les pièces jointes des vieux posts ne sont plus téléchargeable directement. Exemple dans ce post : http://www.escrime-info.com/modules/n ... wtopic.php?post_id=302574Le module ne voit plus que c'est un pdf. Si on enregistre le fichier et qu'on change l’extension, on a bien le fichier d’origine, qui, je crois, est bien dans le dossier uploads/newbb/ Je n'ai pas ce problème dans des posts plus récents, certainement d'après la dernière mise à jour (newbb 4,34 Final). J'aimerais résoudre ce problème, quitte à intervenir dans la BDD, mais je ne comprends pas ce qu'il y a dans le champ "attachment" de la table "bb_posts". C'est crypté ? Bref, si par miracle l'un de vous a une idéee pur moi... Mille mercis.
Posté le : 26/04/2020 14:54
|
18 ans sous XOOPS !
|
|
Re: newbb pièces jointes de vieux posts |
|
Team FrXoops
Inscrit: 14/05/2004 22:32
|
Bonsoir, Je ne suis pas sur que ce soit crypté c'est juste un nom généré manière aléatoire de manière à avoir un nom unique pour le fichier, il me semble, mais à vérifier. Ca permet d'avoir deux fichiers de même nom téléchargés par deux personnes différentes avec un nom de stockage différent, Le nom original doit être conservé dans la table je pense. Si j'ai un peu de temps la semaine prochaine je regarde pour vérifier. JJdai
Posté le : 26/04/2020 22:00
|
|
|
Re: newbb pièces jointes de vieux posts |
|
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
|
Sans compétences particulières dans ce domaine,
juste une piste :
dans la base de données, entre les différentes version de XOOPS que tu as fait évoluer, as tu passé la base des tables MyISAM vers UTF8 ?
Juste une piste...
Posté le : 27/04/2020 00:47
|
|
|
Re: newbb pièces jointes de vieux posts |
|
Régulier
Inscrit: 04/02/2003 08:53
De Paris
|
Merci à tous les deux ! Citation :Je ne suis pas sur que ce soit crypté c'est juste un nom généré manière aléatoire de manière à avoir un nom unique pour le fichier, il me semble, mais à vérifier. Ca permet d'avoir deux fichiers de même nom téléchargés par deux personnes différentes avec un nom de stockage différent, Le nom original doit être conservé dans la table je pense. C'est le bien ce que je pensais avant de regarder le contenu du champ "Attachment", qui m'intrique vraiment. C'est une longue chaine de caractère, pas simplement une correspondance. Exemple avec les liens d'Alain : post_id=302578 (le premier lien), la valeur du champ attachment :
YTozOntpOjEzMjc4NjM0Mjg7YTo1OntzOjEwOiJuYW1lX3NhdmVkIjtzOjE5OiIxXzRmMjU5NjQ4ZWMzYTUucGRmIjtzOjEyOiJuYW1lX2Rpc3BsYXkiO3M6MzM6IkZEU19OMl9UYWI4X1NURE9VTENIQVJELVJFSU1TLnBkZiI7czo4OiJtaW1ldHlwZSI7czoxNToiYXBwbGljYXRpb24vcGRmIjtzOjEyOiJudW1fZG93bmxvYWQiO2k6MTQ0O3M6MTE6Im51bURvd25sb2FkIjtpOjMzO31pOjEzMjc4NjM0Mjk7YTo1OntzOjEwOiJuYW1lX3NhdmVkIjtzOjE5OiIxXzRmMjU5NjU1YmRkNjEucGRmIjtzOjEyOiJuYW1lX2Rpc3BsYXkiO3M6MjU6IkZEU19OMV90YWI4X01FTFVOLUxQUi5wZGYiO3M6ODoibWltZXR5cGUiO3M6MTU6ImFwcGxpY2F0aW9uL3BkZiI7czoxMjoibnVtX2Rvd25sb2FkIjtpOjQ2NTtzOjExOiJudW1Eb3dubG9hZCI7aTo3Nzt9aToxMzI3OTEwOTUyO2E6NTp7czoxMDoibmFtZV9zYXZlZCI7czoxOToiMV80ZjI2NTAyOGE0MWUzLnBkZiI7czoxMjoibmFtZV9kaXNwbGF5IjtzOjI2OiJGSFNfTjFfdGFiMTZfTUVMVU4tTURGLnBkZiI7czo4OiJtaW1ldHlwZSI7czoxNToiYXBwbGljYXRpb24vcGRmIjtzOjEyOiJudW1fZG93bmxvYWQiO2k6NTE5O3M6MTE6Im51bURvd25sb2FkIjtpOjgyO319
et pour le post 420393 :
YToxOntpOjE1ODUzNDMyODQ7YTo0OntzOjEwOiJuYW1lX3NhdmVkIjtzOjIzOiIyNzg1N181ZTdlNmIyZGE5N2JiLnBkZiI7czoxMToibmFtZURpc3BsYXkiO3M6MTE6IkFwZXLDp3UucGRmIjtzOjg6Im1pbWV0eXBlIjtzOjE1OiJhcHBsaWNhdGlvbi9wZGYiO3M6MTE6Im51bURvd25sb2FkIjtpOjQxO319
Est-ce ça que tu voulais que j'indique ? Pour le deuxième lien, qui fonctionne, la pièce jointe est renommée 27857_5e7e6b2da97bb.pdf dans le dossier /uploads/newbb. Bref, je ne comprends pas trop comment ça fonctionne !! Et je ne vois pas le rapport avec "attachid"
Posté le : 27/04/2020 13:19
|
18 ans sous XOOPS !
|
|
Re: newbb pièces jointes de vieux posts |
|
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
|
Non, ce n'est pas ce que je souhaite voir mais plutôt les autres champs associés à ce champs. Je n'utilise pas ce module, donc je ne peux pas connaître la structure des tables utilisées...
Avec le champs attachemnt, tu dois avoir d'autres champs associés, c'est ce qu'on appelle un enregistrement,
ex : table users champs : uname
je veux donc connaitre la liste des autres champs, dans mon exemple c'est "uid", "name", "uname","email","url"... ainsi que leur valeur.
je suppose qu'il doit y avoir un champs qui permet au script de savoir comment traiter ce fichier.
Ex dans mon esprit (juste un principe) Champs "Binaire" avec "0" ou "1" pour valeur.
Le lien du module stp ? On pourra voir le script et la structure des tables de la BDD
Posté le : 27/04/2020 13:36
|
|
|
Re: newbb pièces jointes de vieux posts |
|
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
|
La structure doit être celle construite à partir de ceci je pense :
DROP TABLE IF EXISTS `newbb_attachments`;
CREATE TABLE `newbb_attachments` (
`attach_id` INT(8) UNSIGNED NOT NULL AUTO_INCREMENT,
`post_id` INT(10) UNSIGNED NOT NULL DEFAULT '0',
`name_saved` VARCHAR(255) DEFAULT NULL,
`name_disp` VARCHAR(255) DEFAULT NULL,
`mimetype` VARCHAR(255) DEFAULT NULL,
`online` TINYINT(1) UNSIGNED NOT NULL DEFAULT '1',
`attach_time` INT(10) UNSIGNED NOT NULL DEFAULT '0',
`download` INT(10) UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`attach_id`),
KEY `post_id` (`post_id`)
)
ENGINE = MyISAM
DEFAULT CHARSET = utf8;
Donc pour ces 2 enregistrements, il nous faut chacune des valeurs de ces champs, on pourra ainsi comparer ! Le champs mimetype me semble est une sacré bonne piste à mon avis.
Posté le : 27/04/2020 13:58
|
|
|
Re: newbb pièces jointes de vieux posts |
|
Régulier
Inscrit: 04/02/2003 08:53
De Paris
|
INSERT INTO `XXX_bb_posts` (`post_id`, `pid`, `topic_id`, `forum_id`, `post_time`, `uid`, `poster_name`, `poster_ip`, `subject`, `icon`, `attachsig`, `approved`, `post_karma`, `attachment`, `require_reply`) VALUES
(302578, 302574, 12232, 47, 1327863428, 1, '', '82.66.86.130', 'Re: Championnat de France Senior par Equipes 2011/2012', '', 0, 1, 0, 'YTozOntpOjEzMjc4NjM0Mjg7YTo1OntzOjEwOiJuYW1lX3NhdmVkIjtzOjE5OiIxXzRmMjU5NjQ4ZWMzYTUucGRmIjtzOjEyOiJuYW1lX2Rpc3BsYXkiO3M6MzM6IkZEU19OMl9UYWI4X1NURE9VTENIQVJELVJFSU1TLnBkZiI7czo4OiJtaW1ldHlwZSI7czoxNToiYXBwbGljYXRpb24vcGRmIjtzOjEyOiJudW1fZG93bmxvYWQiO2k6MTQ0O3M6MTE6Im51bURvd25sb2FkIjtpOjMzO31pOjEzMjc4NjM0Mjk7YTo1OntzOjEwOiJuYW1lX3NhdmVkIjtzOjE5OiIxXzRmMjU5NjU1YmRkNjEucGRmIjtzOjEyOiJuYW1lX2Rpc3BsYXkiO3M6MjU6IkZEU19OMV90YWI4X01FTFVOLUxQUi5wZGYiO3M6ODoibWltZXR5cGUiO3M6MTU6ImFwcGxpY2F0aW9uL3BkZiI7czoxMjoibnVtX2Rvd25sb2FkIjtpOjQ2NTtzOjExOiJudW1Eb3dubG9hZCI7aTo3Nzt9aToxMzI3OTEwOTUyO2E6NTp7czoxMDoibmFtZV9zYXZlZCI7czoxOToiMV80ZjI2NTAyOGE0MWUzLnBkZiI7czoxMjoibmFtZV9kaXNwbGF5IjtzOjI2OiJGSFNfTjFfdGFiMTZfTUVMVU4tTURGLnBkZiI7czo4OiJtaW1ldHlwZSI7czoxNToiYXBwbGljYXRpb24vcGRmIjtzOjEyOiJudW1fZG93bmxvYWQiO2k6NTE5O3M6MTE6Im51bURvd25sb2FkIjtpOjgyO319', 0);
et
INSERT INTO `XXX_bb_posts` (`post_id`, `pid`, `topic_id`, `forum_id`, `post_time`, `uid`, `poster_name`, `poster_ip`, `subject`, `icon`, `attachsig`, `approved`, `post_karma`, `attachment`, `require_reply`) VALUES
(420393, 420311, 16697, 10, 1585343284, 27857, '', '86.234.18.40', 'Re : Programme de Calcul de Classements', '', 0, 1, 0, 'YToxOntpOjE1ODUzNDMyODQ7YTo0OntzOjEwOiJuYW1lX3NhdmVkIjtzOjIzOiIyNzg1N181ZTdlNmIyZGE5N2JiLnBkZiI7czoxMToibmFtZURpc3BsYXkiO3M6MTE6IkFwZXLDp3UucGRmIjtzOjg6Im1pbWV0eXBlIjtzOjE1OiJhcHBsaWNhdGlvbi9wZGYiO3M6MTE6Im51bURvd25sb2FkIjtpOjQyO319', 0);
Le module : https://github.com/XoopsModules25x/newbb/releases/tag/4.34_FINALCurieusement il y a bien une table bb_attachments également, mais chez moi, elle est vide, alors que le système de pièces jointes fonctionne correctement.
Posté le : 27/04/2020 13:59
|
18 ans sous XOOPS !
|
|
Re: newbb pièces jointes de vieux posts |
|
Régulier
Inscrit: 04/02/2003 08:53
De Paris
|
Citation :alain01 a écrit : La structure doit être celle construite à partir de ceci je pense :
DROP TABLE IF EXISTS `newbb_attachments`;
CREATE TABLE `newbb_attachments` (
`attach_id` INT(8) UNSIGNED NOT NULL AUTO_INCREMENT,
`post_id` INT(10) UNSIGNED NOT NULL DEFAULT '0',
`name_saved` VARCHAR(255) DEFAULT NULL,
`name_disp` VARCHAR(255) DEFAULT NULL,
`mimetype` VARCHAR(255) DEFAULT NULL,
`online` TINYINT(1) UNSIGNED NOT NULL DEFAULT '1',
`attach_time` INT(10) UNSIGNED NOT NULL DEFAULT '0',
`download` INT(10) UNSIGNED NOT NULL DEFAULT '0',
PRIMARY KEY (`attach_id`),
KEY `post_id` (`post_id`)
)
ENGINE = MyISAM
DEFAULT CHARSET = utf8;
Chez moi cette table est curieusement vide !
Posté le : 27/04/2020 14:00
|
18 ans sous XOOPS !
|
|
Re: newbb pièces jointes de vieux posts |
|
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
|
Je vais regarder tes 2 enregistrements, mais ça sent plutôt le script de MAJ de newbb qui n'aurait pas fait le boulot attendu...
Posté le : 27/04/2020 14:02
|
|
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.
|