演示链接:查看演示

Discuz论坛教程:“未定义操作”常见问题及处理方法

1、打开主题时提示

     1)这种情况一般是因为该主题没有主题帖造成的,可以进入数据库通过下面的 SQL 确认一下:

select * from cdb_posts where tid =主题 id and first=1

复制代码

     如果返回的记录数为 0 的话,说明确实不存在主题帖,可以通过下面的方法解决:

      通过 phpMyAdmin,进入论坛数据库,执行 SQL :

select * from cdb_posts where tid=主题 id order by dateline desc;

复制代码

     将第一条记录的 first 字段的值修改为 1 。

    2)另外一种情况是数据表 cdb_posts 损坏(非严重损坏),导致 SQL 执行出错,查不到数据。这种情况,只需要修复一下数据表 cdb_posts 。

2、编辑某个帖子时提示

     具体的表现是:打开主题,浏览帖子时正常,但是编辑某个帖子的时候会提示“未定义操作”,这种情况一般由于 cdb_posts 表中这个帖子对应的记录的某个(或某些)字段有问题造成的。常见的情况是 fid 这个字段的值不是当前论坛的 fid,修复方法,执行 SQL :

select * from cdb_posts where pid= 帖子id

复制代码

    将 fid 的值修改成当前板块的 fid。

3、查看帖子的时候,点击页码,提示这个错误

     这主要是因为批量删帖或者其他的操作导致 cdb_threads 中存储的该主题的回复数比 cdb_posts 中该主题的实际回复数多造成的,解决方法是:以版主或者管理员身份登陆,然后通过查看帖子页面“管理选项”中“修复主题”功能修复。

4、置顶主题时提示

    一般情况下有下面两种原因造成:

    1)修改模板,导致表单传递的值不正常。这种情况只需要将修改过的模板用默认模板文件覆盖。

    2)在前台置顶过程中,后台修改了管理组的置顶权限。

5、高亮主题时提示

    修改模板,导致表单传递的值不正常。这种情况只需要将修改过的模板用默认模板文件覆盖。

THE END
喜欢就支持一下吧
点赞0 分享