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

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[修改] 后台每天发帖的方法

[复制链接]
tlint 发表于 2013-10-31 11:02:51 | 显示全部楼层 |阅读模式
从没做过二次开发,因为有个需求是每天发通知让人回复完成情况,于是找到了https://discuz.dismall.com/forum. ... ead&tid=3278393,但是这个帖子说“还是要自己解决”,却没说怎么解决。找到一个相对靠谱的文档。http://blog.php230.com/discuz-data-acquisition-and-posting.html

一直想弄个discuz的数据采集程序,这2天研究了下discuz发帖涉及的几个数据库表,这里分享一下自己的处理方法。
        discuz发表主题设计的几个表:(这里列出了主要的几个相关的表)
        1、主题表 pre_forum_thread:这个表一个主要数据就是 tid 主题ID
        2、post 分表协调表 pre_forum_post_tableid:这里需要获取一个自增的 pid
        3、帖子表 pre_forum_post :记录主题pid、fid、tid、title、content等主要信息
        4、版块表 pre_forum_forum:这里主要更新版块的主题、帖子数量
        5、帖子主题审核数据表 pre_forum_thread_moderate:这个可以根据自己状况决定,并不是必须的
        6、用户统计表 pre_common_member_count:主要是更新用户的主题数量
        自己处理发帖主要涉及到了上面6个数据库表,其中第5个不是必须的。想了解discuz 数据库相关信息可以查看:http://faq.comsenz.com/library/database/x25/x25_index.htm
        大致流程是这样的:
        第一步:向 主题表 pre_forum_thread 中插入版块ID、用户ID、用户名、帖子标题、发帖时间等信息。
        第二步:获取第一步插入表 pre_forum_thread 的数据ID,作为主题ID,即 tid
        第三步:向 post 分表协调表 pre_forum_post_tableid 插入一条数据,这张表中只有一个自增字段 pid
        第四步:获取 第三步 插入表 pre_forum_post_tableid 的数据ID,作为 pid
        第五部:向帖子表 pre_forum_post 中插入帖子相关信息,这里需要注意的是: pid为第四部的pid值,tid为第二步的tid值
        第六部:更新版块 pre_forum_forum 相关主题、帖子数量信息
        第七步:更新用户 pre_common_member_count 帖子数量信息
        discuz发帖过程主要就是以上7个步骤,通过这几个步骤就可以完成对实现discuz的发帖流程,其中设计到一些积分等其他信息的可以自己加上。
        相关代码请查看:http://blog.php230.com/an-analog-discuz-posting-php-class.html

============================================


这个代码没有利用系统提供的接口。

 楼主| tlint 发表于 2013-10-31 11:36:50 | 显示全部楼层
在x3下按照https://discuz.dismall.com/thread-3278393-1-1.html的代码,修改了两个地方。
1、require那句不知道什么原因有问题,修改成require_once libfile('class/core')
2、根据上贴7个步骤,原来的代码顺序有问题,需要先insert thread,然后insert post_tableid获得pid,然后才能insert post表。
回复

使用道具 举报

66061923 发表于 2013-10-31 11:46:22 | 显示全部楼层
没有用过后台发贴的哎
回复

使用道具 举报

1314学习网 发表于 2013-10-31 11:49:35 | 显示全部楼层
支持下分享。。。
回复

使用道具 举报

雪丫鬟 发表于 2013-10-31 17:10:33 | 显示全部楼层
这个操作好繁琐啊
回复

使用道具 举报

whzy 发表于 2014-8-9 07:49:06 | 显示全部楼层
真是好棒的帖子!!!感谢总结分享,只不过发帖过程中没有涉及附件如何存储
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-18 07:48 , Processed in 0.028916 second(s), 4 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

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