




已阅读5页,还剩56页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
陕西理工学院毕业设计网络留言板的设计与实现XXX(陕西理工学院数学与计算机科学学院XX专业XX班,陕西 汉中723001)指导老师:XX【摘要】设计并实现了一个基于B/S架构的网络留言板。该留言板系统采用PHP技术开发,利用数据库访问技术实现对数据库的各种操作,从而实现了留言板的留言及管理功能。在设计过程中遵循软件开发流程,首先对系统功能作出需求分析,在此基础上建立系统的应用原型,然后进行了留言板系统的功能设计与实现,经过测试阶段的反复调试和验证不断地修正和完善系统功能,最终达到符合要求的可行系统。实现的具体功能包括用户注册、留言查看、留言签写、留言搜索及后台管理等,并根据不同功能模块面向的用户对权限进行了合理划分。【关键词】留言板;PHP;数据库;MySQL毕设源码下载Design and Implementation of Message BoardsXXX(Grade*, Class*, Major XXX,School of Mathematics and Computer Science,Shaanxi University of Technology,Hanzhong 723001,Shaanxi)Tutor:XXAbstract: A internet message board based on B / S structure is designed and implemented. The message board system is developed with the PHP language, makes use of the database access technology for database operations, in order to achieve the leaving words function and management function. Following the software development processes during the design process, first of all the requirement analysis is made for the system. Based on this the system application prototype is established, and then the functions of the message board system are designed and implemented, after repeated debug and commissioning, the system function is improved continuously, eventually the requirements of practical system is reached. Its specific functions include user registration, message viewing, writing message, message searching and the background management. According to the different functional modules, the permission of the users is divided rationally.Key words:Message boards; PHP; Database; MySQL目录引言11 系统分析21.1可行性分析21.2需求分析21.2.1系统设计目标21.2.2系统功能分析22 系统开发工具及环境32.1 MVC三层构架32.2开发工具简介32.2.1 PHP简介32.2.2 Apache简介32.2.3 MySQL数据库简介42.3开发模式52.4系统开发环境53 系统概要设计63.1模块设计63.2留言板系统流程64 数据库设计84.1数据库需求分析84.2数据库概念结构设计84.3数据库逻辑结构设计85 系统详细设计115.1数据库的连接115.2首页设计135.3用户登录模块的实现145.4首页查看留言的实现155.5留言搜索的实现185.6用户签写留言实现185.6.1敏感词过滤195.6.2验证码技术的实现205.6.3签写留言的入库操作215.7用户注册模块的设计215.8后台设计225.8.1后台页面设计225.8.2敏感词添加的实现235.8.3留言管理的实现246 系统功能测试26总结27致谢28参考文献29科技外文文献30附录A: 源程序代码51附录B: 系统使用说明书58引言由于Internet技术持续而飞速的发展,给人们各个方面带来了巨大变化,尤其对传统的交流方式提出了新的模式和要求,由此而诞生的网络留言板系统在Internet应用上的地位显而易见。网络留言板系统利用网络一定的时效性和广泛的传播面,可以方便人与人之间的信息交流和互动。它已成为现代网络信息化建设中的重要组成部分,从而备受人们的重视。最初,留言只是用于发布公告系统,讨论问题的在线交流平台;但现在的网络留言板已经不再是以一个留言板的形式独立地呈现给用户留言,随着网络的普及,留言的功能越来越丰富,受到广大网民的欢迎。留言板已被作为一种网站系统的留言功能模块嵌入到一些需要留言功能的网站系统中,从而减少了网站留言功能模块的开发,像企业、学校等单位可以利用网上的留言发布公告、通知等。因此留言板在未来的网站系统中是不可缺少的一部分。对于一般企业而言,网络留言系统能够通过网络提供方便的日常信息管理和交互,同时只需要相对较低廉的建设和维护成本。另外,企业还可以通过网络留言板,为客户提供一个跨地域的交流平台,以便及时了解和掌握客户需求,加强企业与客户之间的沟通,提高企业的市场竞争力。借助于留言板可以方便和朋友的联系,加强朋友之间的感情交流,可以方便的查阅各种资料,可以提高获取信息的随机性,促进信息和技术的交流,还可以为用户提供一个休闲的聚会空间,以此来增加网站的人气,维持稳定数目的访问群体。因此,本次开发留言板系统旨在探索寻求一种以互联网为基础的开放模式,更好的方便人们日常信息的沟通。1 系统分析随着互联网的高速发展,越来越多的人们都在网上建立起了自己的留言板,很多留言板为我们的日常生活提供了很大的帮助,展示了强大的媒体优势,留言板的作用越来越受到重视,已经成为了大家信息沟通,技术交流不可或缺的工具。要开发网络留言板,首先应掌握它的用户需求,理清它的功能结构,然后才能够有依有据的进行功能模块的划分,开发环境的选择,进而进行整个系统的代码实现。1.1可行性分析网络留言板可以为用户和企业提供一个具有更好互动性的交流平台,方便企业快速获取来自不同层次用户的反馈信息,并可以更有效地处理这些反馈信息,从而减少花费到这方面的大量时间,提高经济管理效率。网站开发近年来呈现飞速发展,已形成现在的以asp,jsp,,php开发语言和开发平台,各个软件公司相继投入研发人员不断的改进产品,因此从技术上讲已经具有成熟的环境。因php简单易学,开发速度快的特点。为了尽快开发出这个留言板,我选择用php进行开发。1.2需求分析在网络高速发展的今天,网络留言板给人们提供了良好的互动沟通的平台。使用网络留言板的网民人数众多,使得网络留言板的留言内容丰富多样,人们可以通过网络留言板讨论工作、学习、生活和娱乐,以及对留言内容和对事物进行评论,从而在网上建立一个任何人都可以参与的互动天地,网络留言板已成为当今网络最为多元化和平民化的互动交流的空间和平台。对于网民,只要有网络留言板,就可以超越现实生活,拥有不同以往的全新网上生活。网络留言板的形式相对简单,大体上可分为留言和留言管理两部分,它虽然简单无比,但却逐渐成为一种新的网络应用模式,它一出现便获得了很多人的支持和参与。网络发展前景无限,及早与网络结合,与信息时代同步,与高科技汇合,定会给社会各行各业的发展注入新鲜的活力。站在网络时代的前夜,我们清晰地听到了网络时代的宣言,谁掌握了网络,谁就掌握了未来。现对于互联网日益增长的用户群来说,网络留言板会有相当大的需求。1.2.1系统设计目标网络留言板的设计目标实现以下功能:新用户注册功能、用户登录功能、登录用户发表留言功能、登录用户查看留言并给管理员留悄悄话的功能、管理员登录功能、管理员回复留言功能、管理员删除留言功能、管理员发布系统公告功能和管理员添加敏感词的功能。1.2.2系统功能分析开发一个留言板系统,首先应确定留言板的功能,最基本的留言板需要实现的功能很简单,一般有用户查看留言,发表留言;管理员查看留言,回复留言和删除留言。属于用户的业务操作有检索留言、查看留言和发表留言,留言管理者的业务操作相对用户要多一项,即管理留言,包括回复留言和删除留言等操作。本系统将要实现的留言板是在最基本的留言板的功能的基础上进行扩展,实现一个高级的网络留言板。前台功能需求:用户登录、用户注册、留言查看、留言检索、显示系统公告和签写留言等。其中,在留言查看模块中要实现查看全部留言、分页浏览留言及管理员回帖显示等功能,在签写留言模块中要实现敏感词过滤、给管理管理员悄悄话、支持图像和表情以及支持验证码等功能。后台功能需求:管理员登录、留言管理、公告发布与管理和敏感词添加与管理。其中,留言管理要实现查看留言、回复留言、删除留言及查找留言等功能。2 系统开发工具及环境系统开发环境的选择对于系统的建立来说至关重要,它将决定着系统开发工作量的大小,系统性能特点以及系统今后维护工作的易难等。因此在开发系统之前,根据对系统所采用的技术、实现功能的评估,在选择开发环境时,主要考虑了一下几个因素:扩展性、总体成本、功能、是否容易开发和管理,另外开放性和互操作性也是需要考虑的一个重要方面,因为该系统是运行在Internet上的,用户平台的差异性决定了与其他系统的互操作是不可避免的。2.1 MVC三层构架MVC是Model-View-Controller的简写,“Model”代表的是应用的业务逻辑,“View”是应用的表面,“Controller”是提供应用的处理工程控制,通过这种设计模型把应用逻辑,吃力过程和显示逻辑分成不同的组件实现。这些组件可以进行交互和重用。2.2开发工具简介以简单、易用和免费为出发点,本系统将选用PHP作为开发语言,选用Apache作为系统调试的Web服务器,数据库选用MySQL。2.2.1 PHP简介PHP是服务器端的一种编程语言,是为了创建HTML内容而设计的既简单游强大的语言。PHP和其他的编程语言类似,使用变量存储临时数值,使用运算符操作变量。PHP的真正价值在于它是一个应用程序服务器。PHP起源于自由软件,即开放源代码软件,使用PHP进行Web应用程序的开发具有以下语言优势。安全性高:PHP是开源软件,每个人都可以看到所有PHP的源代码,程序代码与Apache编译在一起的范式也可以让它具有灵活的安全设定,PHP具有了公认的安全性能。跨平台:PHP几乎支持所有的操作系统平台并且支持Apache、IIS等多种Web服务器,并以此广为流行。支持广泛的数据库:可操作多种主流与非主流的数据库,如MySQL、Access、SQL Server、Oracle、DB2等,其中PHP与MySQL是现在最佳的组合,它们的组合可以跨平台运行。简单易学:PHP嵌入在HTML语言中,以脚本语言为主,内置丰富函数,语法简单、书写容易、方便学习掌握。执行速度快:占用系统资源少,代码执行速度快。模板化:实现程序逻辑与用户界面分离。支持面向对象:支持面向对象和过程的两种风格开发,并可向下兼容。开发成本低:在流行的企业应用LAMP平台中,Linux、Apache、MySQL和PHP都是免费软件,这种开源免费的框架结构可以为网站经营者节省很大一笔开支。内嵌Zend加速引擎,性能稳定快速。应用范围广:PHP技术在Web开发的各个方面应用的非常广泛,世界上很多大公司都采用了PHP技术。2.2.2 Apache简介Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。Apache web服务器软件拥有以下特性: 支持最新的HTTP/1.1通信协议; 拥有简单而强有力的机遇文件的配置过程; 支持通用网关接口; 支持基于IP和基于域名的虚拟主机; 支持多种方式的HTTP认证; 集成Perl处理模块; 集成代理服务器模块; 支持实时监视服务器状态和定制服务器日志; 支持服务器端包含指令(SSI); 支持安全Socket层(SSL); 提供用户会话过程的跟踪;2.2.3 MySQL数据库简介MySQL是一个真正的多用户、多线程SQL数据库服务器。SQL(结构化查询语言)是世界上最流行的和标准化的数据库语言。MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。SQL是一种标准化的语言,它使得存储、更新和存取信息更容易。例如,你能用SQL语言为一个网站检索产品信息及存储顾客信息,同时MySQL也足够快和灵活以允许你存储记录文件和图像。MySQL 主要目标是快速、健壮和易用。最初是因为我们需要这样一个SQL服务器,它能处理与任何可不昂贵硬件平台上提供数据库的厂家在一个数量级上的大型数据库,但速度更快,MySQL就开发出来。自1996年以来,我们一直都在使用MySQL,其环境有超过 40 个数据库,包含 10,000个表,其中500多个表超过7百万行,这大约有100 个吉字节(GB)的关键应用数据。MySQL建立的基础是业已用在高要求的生产环境多年的一套实用例程。尽管MySQL仍在开发中,但它已经提供一个丰富和极其有用的功能集。MySQL 最早起始于 1979 年,开始是 Michael “Monty” Widenius 为瑞典的 TcX 公司创建的 UNIREG 数据库工具。1994 年,TcX 开始寻找一个用来开发 Web 应用程序的 SQL 服务器。他们测试了一些商业服务器,但是发现所有服务器对于 TcX 的大型表来说都太慢。他们也试了 mSQL,但它缺乏 TcX 需要的某些功能。因此,Monty 开始开发一种新的服务器。其编程接口明确地设计为类似 mSQL 的编程接口,因为 mSQL 可得到几个免费的工具,所以利用与 mSQL 类似的接口,可以将这些相同的工具用于MySQL 从而大大减少了开发接口的工作。1995 年,Detron HB公司的 David Axmark 努力争取 TcX公司在因特网上发布 MySQL。David 还做了文档资料方面的工作和使 MySQL 与 GNU 的配置实用程序一起建造的工作。MySQL 3.11.1 在 1996 年以用于 Linux 和 Solaris 系统的二进制分发形式发布。今天,MySQL 正工作在许多平台上,并且二进制和源代码的形式都可以得到。MySQL 并不是一个开放源代码的产品,因为在某些条件下使用它需要许可证。但是,MySQL 很愿意在开放源代码的团体内得以普及,因为“认证”这个术语并不是非常有约束力的(除非通过出售 MySQL 或出售需要它的服务来挣钱,否则,大体上说 MySQL 一般是免费的)。MySQL 的普及并不限于开放源代码团体内。虽然它在个人计算机上运行(确实,MySQL 的开发一般在不昂贵的 Linux 系统上进行),但它是可移植的,并且运行在商用操作系统(如 Solaris、Irix 和 Windows)和一直到企业服务器的各种硬件上。此外,它的性能也足以和任何其他系统相匹敌,而且它还可以处理具有数百万个记录的大型数据库。MySQL 的广泛应用前景在我们面前尚未完全展开,如运行在功能强但不昂贵的硬件上的免费可用操作系统,将丰富的处理功能和能力提供给比以往更多的人,在比过去范围更广的系统上运行等等。信息处理的经济障碍的降低使强有力的数据库解决方案到达了比过去任何时候更多的人和机构的手中。例如,本人在运行 LinuxPPC 的 G3 PowerBook 笔记本电脑上使用 MySQL 与 Perl、Apache 和 PHP,这允许本人在任何地方都可以进行工作,总的成本只是 PowerBook 的成本。过去只能梦想将高性能的 RDBMS 用于自己工作的机构,现在可以这样做了,并且开销很低。数据库的利用在单一的层次上也在不断地增加。过去从未想过要使用数据库的人现在也开始考虑一旦得到一个数据库,怎样将其用于自己的各种目的,例如用来存储和访问系统的研究结果,跟踪和维护最喜爱的收藏物(蝴蝶、邮票、捧球明星卡等等),帮助管理新开张的公司,或者提供个人 Web 站点的搜索能力。2.3开发模式网站建设目前主要有两种基本的开发模型:两层模型、三层模型。B/S结构是真正的三层结构,它以访问WEB数据库为中心,HTTP为传输协议,客户端通过浏览器(Browser)访问WEB服务器和与其相连的后台数据库,我们称之为B/S(Browser/Server)模式。其三级结构组成如图2.3所示:图2.3 开发模式图图中从左到右,分为三个层次:第一层是客户端即浏览器,主要完成客户和后台的交互及最终查询结果的输出功能。在客户端向指定的Web服务器提出服务器请求,Web服务器用HTTP协议把所需文件资料传给用户,客户端接受并显示在WWW浏览器上;第二层Web服务器是功能层,完成客户的应用功能,即Web服务器接受客户请求,并与后台数据库连接,进行申请处理,然后将处理结果返回Web服务器,再传至客户端;第三层数据库服务器是数据层。数据库服务器应客户请求独立地进行各种处理。与传统的C/S模式相比,B/S结构把处理功能全部移植到了服务器端,用户的请求通过浏览器发出,无论是使用和数据库维护上都比传统模式更加经济方便。而且使维护任务层次化:管理员负责服务器硬件日常管理和维护,系统维护人员负责后台数据库数据更新维护。2.4系统开发环境系统能够顺利开发完成,好的开发环境是必要的。该系统使用的开发环境如下。服务器端 操作系统:Windows Server 2003。 服务器:Apache 2.0。 PHP软件:PHP 5.0。 数据库:MySQL 5.0 MySQL图形化管理软件:phpMySQLAdmin-。 浏览器:IE8.0客户端 浏览器:推荐使用IE6.0及以上版本。3 系统概要设计3.1模块设计经过系统的功能分析可以明确的知道,网络留言板的功能分为普通用户的前台功能和留言管理的后台功能两部分,因此模块也分为两部分进行设计。网络留言板的模块体系如图3.1所示。网络留言系统主要包括以下功能模块: 查看留言功能模块:供用户查看及浏览留言; 签写留言功能模块:用户签写留言、过滤留言敏感词、给管理员悄悄话; 文章查看功能模块:用户可查看管理员发表的文章; 最新留言列表显示功能模块:用户可以浏览最新的留言; 用户注册功能模块:供需要留言的用户注册账号; 管理员登录功能模块:管理员登录; 留言管理功能模块:管理留言、查找留言、回复留言、管理管理员私贴; 公告功能模块:公告的发表、公告浏览、公告删除; 敏感词管理功能模块:添加敏感词、读取敏感词。图3.1 网络留言板的模块体系3.2留言板系统流程系统的各个功能模块已确定,接下来要做的是分析清楚各个模块之间的流程关系,将各个功能模块串联起来,使得模块之间有关联的关系,这样才能构成一个完整的系统。首先签写留言信息,然后对留言内容进行敏感词过滤,如果提交成功,则将留言信息显示在前台首页,最后由管理员对留言信息进行综合管理。管理员对留言进行管理之前先要登录,登录成功后进入后台的留言管理页面。留言板的系统流程如图3.2所示。图3.2 网络留言板系统流程4 数据库设计4.1数据库需求分析本系统的主要实体有:用户信息实体、留言信息实体、留言回复信息实体、文章信息实体。各实体之间的关系E-R图如图4.1所示。图4.1 网上留言系统E-R图4.2数据库概念结构设计数据库逻辑设计将所有实体和关系转换成一个系列的关系模式,将图4.1中数据库E-R图转换成为关系模型。 用户:(用户编号,用户名,昵称,密码) 留言信息:(留言编号,留言昵称,留言主题,留言内容,留言心情,留言时间,用户头像,回复标记,私贴标记) 留言回复信息:(留言编号,留言昵称,留言主题,留言内容,留言心情) 公告信息:(公告编号,公告主题,心情,公告内容,发布日期)4.3数据库逻辑结构设计根据数据项,可以设计出满足需求的各种实体,以及它们之间的关系。这样本系统设计一下实体:用户、留言、留言回复和公告。这几种实体对应数据库中的4个表:tb_user、tb_note、tb_note_answer和tb_fil,每个表与逻辑设计中一种关系模型对应。下面是每个数据表中的属性,包括属性列的名称,数据类型,长度等内容。经过上面对系统功能的分析和需求总结,设计出如下所示的数据项:(1) 用户,包括用户编号、用户名、昵称和密码。用户信息及属性如图4.2所示。图4.2 用户实体属性图tb_user表:tb_user表用来存储用户的ID、用户名、昵称及密码,如表4.1所示,主键是在一个表上定义的唯一键中的一个,而且一个表上只能有一个主键。表4.1 用户信息数据表数据项字段类型长度用户编号user_idint11用户名user_namevarchar40昵称user_nicknamevarchar40密码user_passwordvarchar40(2) 留言,包括留言编号、留言昵称、留言主题、留言内容、留言心情、留言时间、用户头像、回复标记和私贴标记。留言信息及属性如图4.3所示。图4.3 留言实体属性图tb_note表:tb_note表用来存储留言的留言编号、留言昵称、留言主题、留言内容、留言心情、留言时间、用户头像、回复标记及私贴标记,留言信息及属性如表4.2所示。表4.2留言信息数据表数据项字段类型长度留言编号note_idint11留言昵称note_uservarchar20留言主题note_titlevarchar40留言内容note_contentvarchar500留言心情note_moodvarchar200留言时间note_timedatetime用户头像note_user_picvarchar200回复标记note_answerint1私贴标记note_flagint1(3) 回复,包括留言编号、留言昵称、留言主题、留言内容和留言心情。回复信息及属性如图4.4所示。图4.4 留言回复实体属性图tb_note_answer表:tb_note_answer表用来存储留言编号、留言昵称、留言主题、留言内容和留言心情,回复信息及属性如表4.3所示。表4.3 回复信息数据表数据项字段类型长度回复编号noan _idint11留言编号noan_note_idint11回复内容noan_contentvarchar500回复时间noan_timedatetime回复者noan_user_namevarchar10(4) 公告,包括公告编号、公告主题、心情、公告内容和发布日期。公告信息及属性如图4.5所示。图4.5 文章实体实体属性图tb_file表:tb_file表用来存储系统公告的编号、公告主题、心情、公告内容和发布日期,公告的信息及属性如表4.4所示。表4.4 文章信息表数据项字段类型长度公告编号file_idint4公告主题file_titlevarchar200心情file_facevarchar100公告内容file_contentetext发布日期fiel_datedatetime5 系统详细设计5.1数据库的连接为了便于维护,减少代码冗余,在数据库连接这部分,采用面向对象的方式,定义了一个数据库访问类DB_MySQL。定义数据库访问类的代码如下。connect();/* 解析函数 */function _destruct()mysql_close($this-Link_ID);/* 连接服务器,选择数据库 */function connect($Database = ,$Host = ,$User = ,$Password = )if ( = $Database) $Database = $this-Database;if ( = $Host) $Host = $this-Host;if ( = $User) $User = $this-User;if ( = $Password) $Password = $this-Password;if ( 0 = $this-Link_ID )$this-Link_ID=mysql_pconnect($Host, $User, $Password);if (!$this-Link_ID)$this-halt(连接数据库服务端失败!);if (!mysql_select_db($this-Database,$this-Link_ID)$this-halt(不能打开指定的数据库:.$this-Database);return $this-Link_ID;/* 释放内存 */function free()if ( mysql_free_result($this-Query_ID) )unset ($this-Row_Result);$this-Query_ID = 0;/* 执行查询 */function query($Query_String)/* 释放上次查询占用的内存 */if ($this-Query_ID)$this-free();if(0 = $this-Link_ID)$this-connect();/设置中文字符集mysql_query(set names gb2312,$this-Link_ID);$this-Query_ID = mysql_query($Query_String,$this-Link_ID);if (!$this-Query_ID)$this-halt(SQL查询语句出错: .$Query_String);return $this-Query_ID;/* 返回结果集记录组成的数组 */function get_rows_array()$this-get_rows();for($i=0;$iRows;$i+)if(!mysql_data_seek($this-Query_ID,$i)$this-halt(mysql_data_seek查询语句出错);/调用自定义函数$this-Row_Result$i = mysql_fetch_array($this-Query_ID);return $this-Row_Result;/* 返回结果集字段组成的数组 */function get_fields_array()$this-get_fields();for($i=0;$iFields;$i+)$obj = mysql_fetch_field($this-Query_ID,$i);$this-Field_Result$i = $obj-name;return $this-Field_Result;/* 返回结果集中记录行数 */function get_rows()$this-Rows = mysql_num_rows($this-Query_ID);return $this-Rows;/* 返回结果集中字段个数 */function get_fields()$this-Fields = mysql_num_fields($this-Query_ID);return $this-Fields;/* 执行SQL语句并返回由查询结果中第一行记录组成的数组 */function fetch_one_array($sql)$this-query($sql);return mysql_fetch_array($this-Query_ID);/* 打印错误信息 */function halt($msg)$this-Error=mysql_error();printf(数据库发生错误: %sn, $msg);printf(MySQL 返回错误信息: %s n,$this-Error);?在这个类中,定义了一个connect()函数用来连接数据库服务器并选择数据库,函数query()的功能为执行查询数据库。5.2首页设计首页是整个网络留言板的入口地址,合理的首页布局和模块分配直接影响到用户对留言板的第一印象。为了吸引更多的用户浏览和使用网络留言板,在系统开发时需要精心地对首页进行设计。本系统在页面设计上采用传统的排版方式,主要有首部导航栏、左侧显示区和主显示区3部分组成,如图5.1所示。 首部导航栏:包括留言签写链接、管理留言链接及用户注册链接。 左侧显示区:包括用户登录、文章显示、检索留言、最新留言等模块。 主显示区:为留言浏览和显示等信息。图5.1 网络留言板首页5.3用户登录模块的实现用户登录模块设计在首页中,使用户在需要留言时能够快捷方便地登录。当用户输入用户名和密码并登录成功后,用户登录模块就不在显示在首页中,直到用户注销在线状态。用户登录模块如图5.2所示。当登陆框中输入的用户名和密码在数据库中存在时,利用全局数组$_SESSION保存此次登录用户的信息,并提示登录成功,如图5.3所示。 图5.2 用户登录 图5.3 提示登录成功用户登录时的进行用户名及密码匹配的业务操作代码如下。alert(登录成功!);location=index.php;alert(对不起,你输入的用户名或密码不正确!请重新输入。);location=index.php;query($sql);$row_count_sum = $DB-get_rows();/每页记录数,可以使用默认值或者直接指定值$row_per_page = 3;/总页数$page_count = ceil($row_count_sum/$row_per_page);/判断是否为第一页或者最后一页$is_first = (1 = $page_num) ? 1 : 0;$is_last = ($page_num = $page_count) ? 1 : 0;/查询起始行位置$start_row = ($page_num-1) * $row_per_page;/为SQL语句添加limit子句$sql .= limit $start_row,$row_per_page;/执行查询$DB-query($sql);$res = $DB-get_rows_array();/结果集行数$rows_count=count($res);分页控制链接的代码实现如下。 当前第 页/共 页 每页 条 第一页 a href=./index.php?page_num=上一页 第一页 上一页 a href=./index.php?page_num=下一页 a href=./index.php?page_num=最后一页下一页 最后一页 全部留言 5.5留言搜索的实现信息检索是对已存在与数据库中的数据按条件进行筛选浏览,是查看历史信息和确认数据操作最为快速、有效的办法。在留言板中检索版块中输入欲查询的关键字,对指定条件的留言信息进行模糊查询,并输出与查询条件相匹配的结果到浏览器。本模块的搜索可根据标题、内容、姓名及时间等任一个关键字进行检索。留言搜索模块效果如图5.6所示。这里用到了like运算符配合通配符进行模糊的查询,实现留言的检索功能。$sql = select note.*,noan.* from tb_note as note left join tb_note_answer as noan on note.note_id = noan.noan_note_id;$sql.= where note.note_title like %.$key_words.% or note.note_content like %.$key_words.% or note.note_time like %.$key_words.% or note.note_user like %.$key_words.%;$DB-query($sql);$note = $DB-get_rows_array($sql);图5.6 留言搜索5.6用户签写留言实现本模块将支持过滤敏感词、添加留言心情、支持给管理员写悄悄话,还可以选择有个性的头像。同时,方便用户查看留言后及时签写留言信息。签写留言模块效果图如图5.7所示。图5.7 签写留言效果图5.6.1敏感词过滤“敏感词”是指网站管理者为了正常经营发展,减少不必要的纷争,消除不良影响,而认为设定的一些交易引起人们歧义思维的词汇。当系统或管理员发现帖子里含有特定的敏感词汇时,该贴会自动被限制发表或删除。提交表单信息到数据库处理页,首先需要对用户的留言信息进行敏感此过滤。在这里使用正则表达式preg_m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 培养高技能人才与推动产业链升级
- 企业财务人员的专业素养与风险防范能力提升
- 本土化与国际化人才培养兼顾路径
- 初中语文整本书阅读的课外拓展与实践活动设计
- 完善部门预算协调机制提升协同效应
- 内涝防治与管网建设的协同发展研究
- 产学研合作推动托幼一体化发展
- 排污源监控与数据采集标准化方案
- 湖北中考《那棵树》满分作文(5篇)
- OBE理念在汽车营销课程中产学研合作的应用
- FZ/T 52003-2014丙纶短纤维
- 百善孝为先主题班会课件
- 业务连续性管理-(BCM)实务培训课件
- 耳鼻喉科多功能手术动力系统
- 北师大版四年级上册数学(全册)同步随堂练习一课一练
- 23届高三语文一轮复习(新教材新高考) 现代文阅读Ⅰ 专题一信息类文本阅读
- K2FastWave中文操作手册
- 创新小白实操指南 教案.docx
- 高中数学 1.2.3函数的表示法(一)教案 新人教A版必修1[1]
- 地热井常见主要问题分析与研究_图文
- 教育学 德育PPT课件
评论
0/150
提交评论