Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[求助] 求助: X3.4帖子分页不正常,请问maxposition是干嘛的?

[复制链接]
drpython 发表于 2020-11-18 22:26:37 | 显示全部楼层 |阅读模式
本帖最后由 drpython 于 2020-11-18 22:29 编辑

论坛是用pw迁移过来的,迁移过程千辛万苦就不说了,迁移过来以后,发现大部分帖子分页不正常。用了网上说的内存清理等各种手段,无效。

无意中发现,如果对帖子进行跟帖,就恢复正常了。

经对数据库做比对,发现如下问题:

pre_forum_thread表中有replies 和maxposition两个字段,查询数据字典得到的信息如下:
replies         mediumint(8) unsigned          0          NO                    回复次数
maxposition         int(8) unsigned          0          NO                    最大回帖位置信息

其中replies 字段的信息一般是正确的,显示了回帖的数量。

而凡是跟帖不正常的帖子,其maxposition 都是1,和replies不同,而且这个maxposition并不是直接等于replies或者是replies+1,有时候+2,甚至更多


请教一下,这个maxposition字段是干嘛的?是不是可以用replies+1来修正呢?
 楼主| drpython 发表于 2020-11-18 22:28:37 | 显示全部楼层
本帖最后由 drpython 于 2020-11-18 22:33 编辑

看了一下pw的数据结构,没有这个maxposition字段,dzx3.4中,只要是跟帖以后,这个字段就正常了

奇怪的是,在帖子列表界面,又貌似不用这个字段,导致分页是完全正常的
回复

使用道具 举报

 楼主| drpython 发表于 2020-11-18 22:39:36 | 显示全部楼层
测试了一下,发现这个maxposition只要是跟帖,就会自动+1,初始值就是replies+1

但是replies是跟着真实帖子数目在变化的,删一个跟帖-1,而maxposition不变,只单向增长

请教高手,这个maxposition是干嘛的
回复

使用道具 举报

 楼主| drpython 发表于 2020-11-19 10:31:36 | 显示全部楼层
狠了狠心,把所有replies>0的跟帖的maxposition都改成了replies+1

现在帖子分页都正常了

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-24 17:52 , Processed in 0.021457 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表