Page 3 sur 3

MessagePosté: 04 Sep 2007, 23:16
par Pete
On dirait que la suppression de mon message rende le sujet à nouveau invisible... J'aurais cru que le forum remplacerait l'id du dernier message par celui de l'avant dernier, en cas de suppression du dernier...

MessagePosté: 04 Sep 2007, 23:21
par Olivier
Euh oui c'est curieux... Que vaut topic_last_post_id maintenant ?

MessagePosté: 04 Sep 2007, 23:21
par Pete
Olivier a écrit:Si certains topic_last_post_id pointent dans le vide, tu peux obtenir la liste des sujets concernés ainsi :

  Code:
select * from phpbb_topics t where not exists (select * from phpbb_posts where post_id=t.topic_last_post_id)


Grâce à ta requête, j'ai trouvé 3 topics avec topic_last_post_id pointant sur un message supprimé.

http://www.yumi2004.fr/forum/viewtopic.php?t=1777
http://www.yumi2004.fr/forum/viewtopic.php?t=3150
http://www.yumi2004.fr/forum/viewtopic.php?t=3922

MessagePosté: 04 Sep 2007, 23:31
par Pete
Olivier a écrit:Euh oui c'est curieux... Que vaut topic_last_post_id maintenant ?


189920

Un message valide. http://www.yumi2004.fr/forum/viewtopic.php?p=189920

Le poster_id de ce message est 1671. Il n'y a pas de membre 1671, ça doit être Fanfiction. En fait, les messages sont gardés, quand je demande les messages dont le poster_id est 1671, j'en obtiens 108, c'est juste le compte qui est supprimé. Mais l'absence du compte doit poser des problèmes pour l'affichage des messages. Il faudrait remplacer, pour tous ces messages, 1671 par -1, non ?

MessagePosté: 04 Sep 2007, 23:39
par Olivier
Pete a écrit:Mais l'absence du compte doit poser des problèmes pour l'affichage des messages.

En effet, cela fait échouer la jointure utilisée dans les requêtes et explique donc la disparition.

Pete a écrit:Il faudrait remplacer, pour tous ces messages, 1671 par -1, non ?

Affirmatif.

MessagePosté: 05 Sep 2007, 01:13
par Pete
UPDATE phpbb_posts SET poster_id = -1 WHERE poster_id = 1671

Tout est rentré dans l'ordre :)