论坛系统 前台 后台 用户模块 版面浏览模块 公共信息模块 帖子模块 用户管理模块 版面管理模块 共公信息管理模块 帖子管理模块 管理员管理模块 图3-6 系统功能模块图
3.2数据库设计
论坛使用Access数据库,下面列出是数据库设计的详细。
3.2.1建立数据表间的关系
论坛数据库主要有以下几个表。
15
表3-7 论坛数据表
序号 1 2 3 4 5 6 7 8 字段名 userdata BBsBoard BbsTopic BbsReply bbsmessage usergrade notefriend bbsadmin 字段类型 用户信息表 版面信息表 主题信息表 帖子信息表 论坛信息表 用户等级表 好友信息表 管理员信息表 3.2.2数据表结构的详细设计
表3-8 用户信息表(userdata)
序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 字段名 userid username Userpassword useremail Usertitle usersex userface gradename addtime birthday question answer userlastip ishidden 0icq 16
字段类型 Int(4) Varchar(50) Varchar(50) Nvarchar(255) Nvarchar(255) Varchar(50) Nvarchar(255) Varchar(50) Datetime Nvarchar(50) Nvarchar(50) Nvarchar(50) Nvarchar(40) Int(4) Nvarchar(255) 说明 用户编号 用户名 密码 电子邮件 用户签名 用户性别 头像 积分 注册日期 用户生日 密码问题 密码答案 最后登录IP 是否隐身登录 用户QQ (续表3-8)
字段 16 17 类型 userinfo openinfo 长度 Nvarchar(255) Varchar(50) 备注 用户真实信息 是否公开基本资料
在用户信息表里保存的是在论坛注册用户的信息,用户编号和用户名在论坛中是不能重复的,用户名不能重复还使用用户编号的原因是计算机对数字检索速度更快。
表3-9 版面信息表(BBsBoard)
序号 1 2 3 4 5 6 7 8 字段名 boardid bootid boardname Child lasttopictime addtime boardstatus topictable 字段类型 Int(4) Int(4) Varchar(50) Int(4) Varchar(255) Datetime(8) Int(4) Int(4) 说明 版面编号 引导标识 主版面名 子版数量 最后一个主题时间 建立日期 版面状态 主题表
表3-10 主题信息表(BbsTopic)
序号 1 2 3 4 5 6 7 8 字段 Id Title BordId Reply lastReplyUser lastReplyTime ReplyId Islocked 17 类型 Int(4) Text Int(4) Int(4) Varchar(50) Datetime Datetime Int(4) 说明 主题编号 主题 版面编号 主题回复数 最后回复用户 最后回复时间 回复Id 是否锁定
(续表3-10)
字段 9 10
表3-11 帖子信息表(BbsReply)
字段 1 2 3 4 5 6 7 8 9 10 11 12 13 类型 Id ParentId BoardId UserName UserLoginIp TopicId Title AddTime Content Reply LastReplyTime VoteTitle StatVote 长度 Int(4) Int(4) Int(4) Varchar(50) Varchar(100) Int(4) Varchar(255) Datetime(8) Text(16) Int(4) Datetime(8) Int(4) Varchar(255) 备注 帖子编号 回复帖子编号 版面编号 用户名 用户登录IP 主题编号 主题 帖子发表日期 帖子内容 回复 最后回帖时间 帖子投票 投票统计 类型 IsTop IsDelete 长度 Int(4) Int(4) 备注 是否置顶 是否删除
表3-10和3-11是紧密关联的,论坛主题信息表记载了论坛中主题帖的信息,建立这个表的原因是用户在浏览论坛中的帖子时先应看到的是主题列表,如果主题能够吸引用户,用户才会去看其中的内容,否则用户一进来就看到帖子内容,会使用户感觉非常的杂乱。这两个表是通过id字段联系起来的,parentid字段是用来针对特定的帖子回复。
接下来几张表是论坛的其它功能需要的数据表。
18
表3-12 论坛信息表(bbsmessage)
字段 1 2 3 4 5 6 类型 MessageId BoardId MsgTitle MsgContent UserName AddTime
表3-13 用户等级信息表(usergrade)
字段 1 2 3 4 5
表3-14 好友信息表(notefriend)
序号 1 2 3 4 字段名 NoteId UserName Frined AddTime
19
长度 Int(4) Varchar(100) Varchar(50) Text(16) Varchar(50) Datetime(8) 备注 信息编号 板块编号 信息标题 信息内容 发信息用户名 发消息时间 类型 GradeId GradeName MinarTicle GradePic ClassId 长度 Int(4) Varchar(50) Int(4) Varchar(50) Int(4) 备注 帖子编号 用户等级 帖子编号 等级标识 每个等级的数量 字段类型 Int(4) Varchar(50) Varchar(50) Datetime(8) 说明 用户编号 用户名 好友名 添加时间