用PHPAjax制作论坛.ppt

上传人:xin****828 文档编号:6308222 上传时间:2020-02-22 格式:PPT 页数:34 大小:1.12MB
返回 下载 相关 举报
用PHPAjax制作论坛.ppt_第1页
第1页 / 共34页
用PHPAjax制作论坛.ppt_第2页
第2页 / 共34页
用PHPAjax制作论坛.ppt_第3页
第3页 / 共34页
点击查看更多>>
资源描述
第21章用PHP Ajax制作论坛 本章将使用PHP与MySQL的知识结合Ajax技术 来实现一个简易的论坛程序 本章所介绍的论坛程序将使用到很多的PHP知识和通过PHP来操作MySQL数据库的技巧 同时也使用部分Ajax的内容 该程序是对全书所学知识的一个很好的总结 通过对本章内容的学习 对读者使用PHP开发大型Web应用程序是一次很好的演习 21 1系统综合分析 论坛 BBS电子公告板 程序在网上有着广泛的应用 大到大型商业网站 小到个人用户都在提供着不同的论坛的服务 同时论坛也是一个较为复杂的程序 与留言簿程序不同论坛有着分论坛及用户的概念 所以在正式开始整个论坛的创建之前有必要先对系统进行综合的分析 21 1 1实现功能 虽然说本章所介绍的论坛程序只是一个简单的论坛 但也需要具备通常论坛程序所要求的基本功能 本章所要介绍的论坛程序具有以下功能 1 论坛用户的注册与登录 2 论坛版块 包括主版与分版 的显示 3 注册用户可以发表主题以及对存在的主题进行回复 4 普通用户有权利编辑自己所发表的主题及贴子 5 注册用户可以更改除用户名之外的其他注册信息 6 管理员可以对论坛版块进行增加 修改以及创建的操作 通常不涉及对论坛版块的删除操作 7 管理员还可以对所有用户发表的贴子进行编辑 删除等操作 以上几条为本论坛程序所要实现的基本功能 本章将把以上所列举的要实现的功能分成各个模块来逐个为读者介绍 21 2开始前的准备工作 本节将介绍在正式对论坛各个模块进行创建之前所要做的准备工作 包括以下几项内容 1 连接数据库的配置文件的创建 2 设计程序运行所需要的数据表 3 为论坛程序制作一个简易的安装文件 21 2 1创建配置文件 由于本章所介绍的论坛程序是以数据库为载体的 所以需要对MySQL数据库进行连接 这里把数据库连接的内容单独放在一个文件中 供其他论坛模块调用 这样做的好处 在前几章所介绍的程序中已经有所提及 这里不再赘述 本小节先来创建论坛系统运行所需要的配置文件 该文件具体内容如以下代码所示 21 2 2创建样式表文件 创建完配置文件之后 还需要创建一个样式表文件 以便于其他功能模块可以调用该样式表文件 使用样式 该样式表文件的内容如以下代码所示 详细内容请参照本书 将以上代码保存为 style css以便其他功能模块可以调用该样式文件 21 3设计数据表 本节对简易论坛程序的所有数据表进行设计 这些表包括 用户记录表 论坛版块记录表 论坛所有贴子记录表等 一个稍微复杂的论坛程序 通常包含有丰富的功能与大量的数据表 由于本章所介绍的论坛只实现21 1 1小节所列举的功能 所以本着简单 够用的原则 只需要三个表就可以满足要求了 这三个表为 用户表 论坛表 贴子表 下面分别对这三个表的具体情况向读者作一一介绍 21 3 1创建用户表 通常论坛都有很多的注册用户 用户表中存储着用户的各项信息 所以用户表应该包括如下内容 ID 用户名 密码 昵称 性别 电子信箱 论坛图像 个性签名 发贴数量 注册时间 权限等 基于以上要求 用户数据表采用如下设计 表名为bbs user 包括11个字段 21 3 2创建论坛分类数据表 论坛通常包括很多栏目 如一个娱乐论坛可能会采用如下所示的分级结构 21 3 3创建帖子记录表 论坛是由用户所发表的的贴子组成 贴子是构成论坛的灵魂 贴子表通常采用的结构 ID 所属论坛ID 回复ID 作者ID号 贴子的标题 贴子的内容 发贴时间 最后回复时间等 下面来完成贴子数据表的设计 表名为bbs post 包含10个字段 具体内容如表所示 21 4创建安装文件 本节来创建整个系统的安装文件 该文件所要实现的功能 接收用户输入内容 创建系统运行所需要的三个表 并向其中添加初始化的内容 用户输入内容有 管理员相关信息 管理员名称 管理员密码 管理员电子信箱以及管理员的昵称等内容 论坛初始化信息 初始化的主论坛名称 主论坛的介绍 初始化的分论坛名称以及该分论坛的介绍 21 5用户的注册与登录 论坛离不开各种类型的贴子 而贴子都是由论坛用户所发的 一个论坛中不可能只有一个管理员 普通浏览者要想成为论坛用户 必须通过注册系统 用户进入论坛必须通过登录系统 本节就为读者来介绍一个简易的论坛注册与登录系统 21 5 1用户注册页 用户注册页功能相对单一 获取用户所输入的内容 并在后台进行处理 先遍历表中是否存在同名用户 如果存在就给出提示 要求用户更换姓名再次注册 这样可以保证用户登录名称的唯一性 如果不存在同名用户 就将用户所输入的内容插入到用户记录表中 完成注册过程 该代码的前台还使用了Ajax技术 对用户的输入进行动态提示 当用户没有输入用户名 密码以及密码与重复密码不一致时将会给予动态提示 21 5 2用户登录页 新用户在成功注册之后 还不能马上进入论坛系统 必须通过登录页面进行登录才可以 本节就向读者介绍如何实现用户的登录 用户要登录到系统中 必须提供两个要素 用户名 密码 只有同时提供了进入系统的这两个要素才有可能进入系统 在用户输入用户名与密码之后 在后台对用户所输入的用户名与密码进行校验 即遍历用户数据表中是否存在用户名与密码与用户所提供内容完全一致的记录 如果存在则注册用户名为Cookie并进入系统 反之则给出出错提示 该页面中使用了与用户注册页相同的Ajax动态提示技术 同时还利用Ajax异步传输的特点实现了 不刷新页面而显示登录状态提示的功能 21 6论坛首页 分论坛显示页 进入论坛的用户 首先需要进入论坛首页 而查看相关版面还需要进入相应的主论坛或者分论坛的显示页面 本节就来向读者介绍如何创建论坛首页 主论坛以及分论坛的显示页面 21 6 1论坛首页显示页面 论坛首页显示页面是用户登录后可以直接看到的页面 该页面将会显示所有的主论坛以及主论坛下的分论坛的信息 主要有主题数 贴子数 除此之外还需要显示分论坛的最后一个主题标题 发贴者 发表时间等 本节就来介绍论坛首页显示页面的创建 21 6 2主论坛显示页面 主论坛显示页面与论坛首页显示页面不同 该显示页面只显示某一主论坛下的分论坛的内容 所以 该页面只需要查看特定主论坛内容即可 本节就向读者介绍如何创建主论坛显示页面 21 6 3分论坛显示页面 前两小节分别为读者介绍了论坛首页 主论坛显示页的创建 本节继续介绍分论坛显示页面的创建 与论坛首页和主论坛显示页面不同 分论坛显示页要直接与贴子打交道 需要显示所有的贴子的内容 如果贴子数多于某一个数如10 则需要使用分页显示 所以该页相对于主论坛显示页来说相对复杂 21 7贴子的操作 贴子是信息是重要承载者 是构成论坛的灵魂 发表与回复贴子是注册用户对贴子最基本的操作 本节就来向读者介绍如何实现 发表新主题 显示已有主题以及回复主题等与论坛贴子相关的操作 21 7 1发表新主题 注册用户在进入一个分论坛之后 就可以在该分论坛中发表新的主题 用户点击相应的连接 打开发表新主题页面 用户可以在前台输入新主题的相关内容 如标题 内容 发贴类型等等 转到后台之后 除了要把贴子内容保存到表bbs post中之外 还要更新论坛类型表bbs type与用户表bbs user 可以说后台的处理复杂度要远远高于前台的输入 另外该模块同时也考虑到了回复已有主题的内容 21 7 2显示已有主题 显示已经存在的主题就需要遍历主题的内容 如作者名称 发贴时间 主题标题 主题内容等 而通常一个主题还包括回复 所以相关的回复贴子也要一并显示 要显示回复贴子需要再次对表进行查找 查找所有re id值为请求主题id的贴子内容并显示即可 在显示主题之后 还需要更新该条主题的浏览量 因为每显示一次主题相当于浏览一次主题 所以其浏览量也要随之增加 除此之外 该代码还使用了Ajax的动态提示技术 对于发贴者只显示其用户名 而把鼠标指针移动到用户名上时 可以从动态提示框中看到此用户的详细信息 这样一方面节省了页面空间的占用 另一方面也整个页面更加美观 21 7 3主题的回复 主题的回复实际上是在发表主题的基础上增加了回复主题的ID值即 re id 这样即可对主题进行回复 代码 php中已经包括了对主题进行回复的内容 对主题进行回复之后的结果如图所示 21 8论坛的管理 这一节来向读者介绍如何使用管理员的超级权限 对论坛进行增加 修改的操作 通过这些内容 管理员可以轻松实现增加新论坛 修改已有论坛等内容 通过新的论坛与内容为论坛注入新的生机和活力 21 8 1增加主 分论坛 论坛在成功创建后 仅有系统默认论坛是远远不够的 管理员应该拥有创建新论坛的权利 本节就来介绍如何创建新论坛 创建新论坛分为三步进行 第一步选择所建立的论坛类型 是主论坛还是分论坛 第二步 输入论坛名称与论坛介绍 如果是分论坛还要选择分论坛所属的主论坛 第三步把所有用户输入内容进行整理 将指定内容加入到数据库的bbs type表中完成论坛的创建 21 8 2修改已有论坛 论坛在创建之后并不是一成不变的 可以对论坛名称 论坛介绍等内容进行修改 要实现这样的效果 只需显示已有内容 等待用户输入新的内容 然后在系统后台用新的内容对表中记录进行更新即可 21 9贴子的管理 上一节介绍了对论坛版块的管理 本节向读者介绍对论坛贴子的管理 用户所发表的贴子可能有输入错误的内容 对于这些内容应该允许用户对其进行修改 而如果用户发表贴子中包含大量非法或者无意义的内容 则必须对这些内容进行删除 本节所介绍的贴子管理就包括 贴子的编辑与删除两种 21 9 1编辑贴子 编辑贴子管理模块获取用户所输入的ID 然后判断登录用户是否为管理员或者为所编辑贴子的作者 如果这两知都不满足 则给出错误提示 如果满足两条中的一条 即管理员可以编辑任何贴子 普通用户只能编辑自己发表的贴子 显示贴子原来的标题与内容 用户可以对其进行编辑 然后将内容提交到后台进行处理 后台只需用用户输入内容更新记录即可 21 9 2删除贴子 删除贴子也是论坛管理中的一项重要职能 如果用户输入太多无意义的内容或者广告内容 则需要对这样的贴子进行删除操作 删除贴子又分两种情况 一种是要删除的贴子不是主题 只需要删除该贴子即可 如果需要删除的贴子是主题就相对复杂了 这里采用这样的机制 当主题被删除时 将其标记为已删除状态 所有主题及内容都不可见了 但其位置仍将保留 21 10用户的管理 用户是论坛中最为活跃的因素 贴子的发表都通过用户来完成 注册用户的信息都存储在表bbs user中 最后一节来介绍一下论坛中用户的管理 本节内容包括 用户信息如何显示 用户信息如何修改 已登录用户如何退出系统等 21 10 1显示用户信息 显示用户信息相对简单 只需读出用户的所有信息 除登录用户名与密码 显示出来即可 21 10 2修改普通信息 用户在注册之后 也允许用户对一些信息如 昵称 性别 签名等内容进行修改 而对于登录用户名与ID一样是确认用户身份的唯一标识 不允许用户进行修改 另外密码项也要单独进行修改 而注册日期 发贴数这些系统自动生成的内容也不允许用户进行修改 21 10 3修改密码 用户登录密码是用户登录系统最重要的依据 通常密码项都会单独进行修改 本章所介绍的简易论坛系统也采用这种模式 21 10 4用户退出系统 用户退出系统模块可以满足用户随时从系统中退出的需要 执行该模块将会清空用户所注册的Cookie值 然后给出转向链接即可 执行该页面不需要数据库的支持 至此 整个简易论坛的功能模块全部为读者介绍完毕 这些模块能够满足一个简易论坛的需要 21 11本章小结 本章用8节内容向读者介绍了如何使用PHP与MySQL来实现一个简易的论坛系统 通过本章的学习 读者能够了解到 所有的大型程序都是由一个一个小型程序组成的 同时本章内容的学习也会使读者为以后用PHP开发Web应用程序打下坚实的基础 当然本章所介绍的内容只是一个非常简易的论坛系统 一个常规的论坛 其功能相当丰富 如 用户交流 文件上传 版主功能 对于贴子操作也有精华贴 置顶贴 锁定贴等等 而所有这些功能都可以通过PHP与MySQL以及相关的Ajax技术来实现 限于篇幅本章就不再对这些内容进行深入的介绍 有兴趣的读者可以下载大型论坛程序的源代码做进一步的研究
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!