• php+smarty轻松开发微社区/微论坛


    今天我们就来分析微社区的基本功能构成吧。首先,每个论坛最主要的是会员在对应的版块下发帖,或者在感兴趣的主题帖下跟帖盖楼。其次,会员能时时看到帖子或版块的基本信息。所以主要大块是:

    1. 前台:会员的注册登录,浏览版块,发帖,跟帖,对自己的帖子操作,回复别人的帖子

    2. 后台:管理员对版块进行分级管理,添加或修改删除,对会员管理等等

    微社区的几个主要功能:

    一.人员

    1.管理员:论坛后台的版块添加,删除等其他管理操作

    2.会员:论坛前台的浏览,发主题帖子或回复别人的帖子(需要在指定版块下)

    二.版块

    有后台管理人员发布整理论坛的版块,发布者是分区版主,发布的同时可以添加增加当前版块的副版主

    三.帖子:帖子就是内容,选在一个版块下由会员发表。

    1.主题帖:会员个人在某版块下发布的(作者就是发帖人)

    2.回复帖:会员本人在别人发布主题帖下的评论(盖楼)。其中一楼(沙发),二楼(板凳),三楼(地板)

    四.验证题

    为了防止发帖机或者恶意注册和发帖的程序,使用随机题目答题才能进行发帖提交到库,比随机图片稍微安全(因为现在有很多图片识别技术,所以需要手动更好点)

    五.上传文件

    发帖中的图片或者会员的头像上传等等。

    六.帖子类别

    1.原创

    2.转帖

    3.分享

    4.求助

    5.活动

    微社区数据库模

    1.board:版块(id,pid,name,desc,uid,moderator,vice_moderator,add_time)

    2.posts:帖子(id,bid,mid,uid,turn_id,type_id,title,content,tags,hits,source,is_essence,ip,add_time,is_remommed)

    3.verify:验证题(id,question,type,answer1,answer2)

    4.file:文件(id,uid,post_id,type,size,add_time)

    5.user:人员(id,user,pwd,nickname,login_count,last_login_ip,last_login_time,state)

    6.post_type:帖子类别(id,cate_name,state)

    后台管理模块

    1.版块管理(列表,添加,修改,删除)

    2.帖子审核(前台会员请求加精,后台人员审核)

    前台管理模块

    1.帖子管理(会员只能对自己的帖子进行修改或删除[可能可以对别人的帖子进行回复])

    2.帖子发布(选择一个版块,再选择一种帖子类别,写标题,标签,内容,和回答问题即可提交)

    基本页面

    1.index主页:以所有一级版块下的子版块循环列表,接受一个一级版块id展示其下的所有子版块的基本信息(版块名,版主,副版主,今日新帖,主题帖数,总帖数,最后更新的帖子信息(会员名,标题,时间等))

    2.forumdisplay进入二级版块页面:通过接受二级版块id展示下面所有主题帖子(基本信息是:主题帖名称,作者,跟帖数/访问数,最后更贴的信息(时间,是谁)),分页显示,嵌入发帖的编辑框和一个发帖调转单独按钮

    3.post发新帖表单单独页面

    4.viewthread进入主题帖的详情页面,现在主题帖子和下面所有跟帖及会员的基本信息(头像|昵称|主题帖|共发帖)

    5.admin后台管理页面:负责添加版块,修改,删除等

    ………………

    公共类

    1.cls_mysql:php操作mysql的基本方法

    2.cls_content:对帖子的列表,添加,删除,修改等操作的方法

    3.cls_board:对版块的显示,修改,添加,删除等操作方法

    包含文件

    1.inc.php:包含smarty,三个公共类,config配置文件,进行实例化三个公共类及模板引擎的配置

    配置文件

    1.config.php: 数据库基本设置

    页面数据块

    1.二级版块页面:从主页的顶级版块下点击二级版块名进入,带当前二级版块id

    基本构成:

    (1).当前版块名

    (2).当前版块的版主和副版主们

    (3).罗列当前版块下的所有主题帖子:

    a.可根据帖子类别筛选(默认全部[1.讨论 2.原创 3.转载 4.求助])

    b.类表可以分页

    (4).在当前版块下发布帖子的表单

    当前版块下主题帖字段:

    (1).主题帖子的标题

    (2).主题帖的发布者及他的最后登录时间

    (3).该主题帖的跟帖数量和访问数量

    (4).该主题帖子最后跟帖(跟帖时间,跟帖网友昵称)

    2 .………………

    --- 待续 ---

    这个目前没有使用任何框架,原生php外加一个模板引擎制作,代码相对比较简单,方便阅读,就是自己封装了几个操作类和一个原生ajax函数,其他的基本是业务增删改查,后期我会放在github上,请持续关注此公众号,后面我会把开源地址奉上,共同学习成长!

    以下个人公众号(ZEROFC_DEV)

  • 相关阅读:
    如何在应用系统中实现数据权限的控制功能(2)
    客户关系管理系统中对客户及相关数据的导入导出分析处理
    基于MVC4+EasyUI的Web开发框架经验总结(10)--在Web界面上实现数据的导入和导出
    基于MVC4+EasyUI的Web开发框架经验总结(9)--在Datagrid里面实现外键字段的转义操作
    基于MVC4+EasyUI的Web开发框架经验总结(8)--实现Office文档的预览
    基于MVC4+EasyUI的Web开发框架经验总结(7)--实现省份、城市、行政区三者联动
    基于MVC4+EasyUI的Web开发框架经验总结(6)--在页面中应用下拉列表的处理
    WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭
    .NET项目开发的几个非常重要的项目设置
    使用NVelocity生成内容的几种方式
  • 原文地址:https://www.cnblogs.com/zerofc/p/8710193.html
Copyright © 2020-2023  润新知