一直想弄个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:主要是更新用户的主题数量 大致流程是这样的: 第一步:向 主题表 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/discuz-data-acquisition-and-posting.html
|