Проблема с последней страницей темы форума

ЕСТЬ РЕШЕНИЕ ЗАКРЫТО
#1 1 марта 2011 в 10:09
Помню, что на форуме уже задавали этот вопрос, но сейчас эту тему найти не могу. Возможно, что она уже и имеет решение.
А суть проблемы в следующим. В некоторых темах (предполагаю в тех, в которых по каким-то причинам были удалены посты), невозможно попасть на последнею страницу — сообщение "Нет сообщений в этой теме".
Вот ссылка на тему форума Мой прекрасный сад. Всего страниц в этой теме шесть. По ссылке на последнюю отправляет на седьмую, которая есть и внизу (пагинация темы) и переход на которую сообщает об отсутствии сообщений.
Замена количества постов на странице ничего не меняет.
Пока девушки проблему решают тем, что простым перебором переходят на шестую страницу, зная, что она последняя. Но тема сезонная и начинает оживать, и мне трудно представить, что будет, когда количество страниц начнет увеличиваться
#2 1 марта 2011 в 10:19
По уму надо бы вообще запретить удалять сообщения пользователям, да и редактировать давать только до того как кто-то посмотрел сообщение. Сорри за оффтоп.
#3 1 марта 2011 в 19:24
Ну а если удалять будет не пользователь, а админ?
Проблема действительно есть. Даже на этом форуме.
Еще не красиво смотрится, когда в поиске отображаются темы, которых больше нет.
#4 1 марта 2011 в 19:33
Если вы бы более точно и определенно описали причину (условия) возникновения данного бага, вы бы здорово помогли, ибо я сколько не старался — так и не воспроизвел данный баг локально у себя.
#5 1 марта 2011 в 21:00
Fuze,
баг действительно существует.
К сожалению, не могу вот так с ходу дать ссылки, на здесь, на нашем форуме сталкивался многократно. Т.е. на последних страницах с точки зрения пагинации постов нету. И на последние обсуждения нужной темы можно попасть, только последовательно приближаясь к концу темы. Правда, очень не удобно. Но причин и закономерностей я не обнаружил… Может, поэтому и не могу дать ссылку на пример.
#6 1 марта 2011 в 21:59

баг действительно существует.

Pampa

я знаю что он существует — но вот словами при каких обстоятельствах он происходит никто не может
#7 1 марта 2011 в 22:21
В данном случае пройдя в этой теме instantcms.ru/forum/thread642.html на "Последняя", то вываливается "Нет сообщений в этой теме". По крайней мере у меня так
#8 1 марта 2011 в 22:30
проверил ссылку RocketeeR, действительно сообщает: "Нет сообщений в этой теме"
#9 2 марта 2011 в 23:33
эта проблема иногда бесит😊часто встречается
#10 2 марта 2011 в 23:52
По существу может кто-то закономерность описать?
#11 3 марта 2011 в 13:01
Fuze
Доброго времени суток. У меня предположение, что происходит это так. Добавился пост, который создал новую страницу, а после этого был удален какой-то из постов, а то и не один, посты передвигаются вверх и на последней странице их не остается, но так как сама страница уже создана, то и ссылка на нее остается и по этой ссылке показывается, правда без постов. Если это так, то решение должно быть где-то в пагинации, наверное
#12 3 марта 2011 в 22:54
Fuze,
может быть, свежий пример поможет проследить закономерность.
Вот, только что увидел: "Walterz70 отвечает в теме "Украшаем и наполняем сайты", сегодня в 22-31.
При попытке перехода: "Нет сообщений в этой теме".
Чтобы найти реально размещенное сообщение Walterz70, надо проделать… ммм… некоторое количество телодвижений scratch

Может быть, этот пример поможет разобраться с причинами?
#13 3 марта 2011 в 23:16
Очевидно ошибка со счетчиком пейджинатора, должно thread642-10.html, а выдает 11.
#14 5 марта 2011 в 00:49
Pampa, у меня то же самое. Только что решил посмотреть тему "Украшаем и наполняем сайты" и вижу "Нет сообщений в этой теме".
#15 5 марта 2011 в 21:36
Проблема выявлена и решена.
Суть (если кому-то интересно)): в выборке списка постов таблица cms_users присоединялась через INNER JOIN, соответственно если пользователь, писавший в теме был удален (в т.ч. из базы), то выборка ограничивалась записями, где есть сообщения существующих пользователей, а посты несуществующих пользователей в выборку не попадали. А запрос, считающий общее кол-во постов соответственно просто считает количество без учета таблицы пользователей.

Короче, фикс брать тут.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.