毕业设计(论文)基于PHP+MySQL技术BBS论坛设计.doc

上传人:仙人指路1688 文档编号:3979584 上传时间:2023-03-30 格式:DOC 页数:28 大小:570.50KB
返回 下载 相关 举报
毕业设计(论文)基于PHP+MySQL技术BBS论坛设计.doc_第1页
第1页 / 共28页
毕业设计(论文)基于PHP+MySQL技术BBS论坛设计.doc_第2页
第2页 / 共28页
毕业设计(论文)基于PHP+MySQL技术BBS论坛设计.doc_第3页
第3页 / 共28页
毕业设计(论文)基于PHP+MySQL技术BBS论坛设计.doc_第4页
第4页 / 共28页
毕业设计(论文)基于PHP+MySQL技术BBS论坛设计.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《毕业设计(论文)基于PHP+MySQL技术BBS论坛设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于PHP+MySQL技术BBS论坛设计.doc(28页珍藏版)》请在三一办公上搜索。

1、1 引言随着Internet技术的快速发展,人与人之间的交流方式逐渐增多。网络视频、网络聊天、博客已成为人们彼此沟通、交流信息的主要方式。此外,为了方便在某一专业领域探讨问题和发表意见,Internet上还出现了在线论坛。在论坛上,人会根据自己的学识、经验发表意见或提出解决问题的方法。通过论坛系统可以随时获得各种最新信息;也可以通过论坛系统与别人讨论计算机软件、硬件、Internet、多媒体、程序设计以及生物学、医学等各种有趣的话题;还可以利用论坛系统来发布征友、廉价转让、招聘人才、求职应聘等启事;更可以召集亲朋好友到聊天室内高谈阔论并且现在很多商务网站开始对论坛重视了起来,纷纷在自己的网站上

2、开设论坛,作为与网民交流的空间,以此来吸引客户,服务客户。由此可见,论坛系统是一种非常必要的系统。在这个数字化时代,全世界有千千万万个网站昼夜不停地提供服务。PHP+MySQL这一对Web应用开发的利器,在从电子商务到网络办公,从邮件服务到大型综合网站的广泛应用,都显示了其强大的功能。目前网上的网页有静态网页和动态网页两种形式。静态网页不能自动更新,更新只能通过重新编写HTML页来实现,所以静态网页的制作和维护的工作量相当大。它的内容也不会因用户、浏览时间的变化而随之变化,所以实现人机交互有相当大的局限性,功能上有太多的限制。而动态网页的实现与静态网页不同,它由客户端向服务器提出申请,服务器根

3、据用户请求,把动态网页内部的代码在服务器端进行相应的处理,再把结果发回客户端。因此,动态网页有以下特点:客户端看到的不是源文件,本身不用任何处理;不同用户、不同时间、不同地点浏览同一个网页返回的结果可以不同;动态网页只有经过用户浏览时才会返回一个完整的网页,而其本身并不是一个独立的网页文件;动态网页构建的网站维护起来比较容易,只需更新数据库内容即可。PHP本身就是一种编程语言,它是吸收了C、Java等语言的综合优势而创建开发的一种新语言。这是它与JSP、ASP的基本不同之处。PHP能够被Apache、IIS等多种服务器支持,而ASP只能被Windows系统下的IIS、PWS所支持。PHP能够很

4、好的运行于Linux、UNIX、Windows、FreeBSD等多种操作系统上,ASP只能运行于Windows系统上,虽然JSP也能在多种系统下得到支持,但是必须以有Java虚拟机为前提。2 系统分析2.1 需求分析BBS系统的目的提供的是一个交流平台,为广大爱好者提供交流经验,探讨问题的社区。因此,BBS最基本的功能首先是发表主题。其次是其他人员根据主题发表自己的看法。此外,为了记录主题的发表者和主题的回复者的信息,系统还需要提供用户注册和登录的功能。用户使用论坛有一定的流程:用户登录进入论坛(一般为游客,有时还要注册为会员),就某个话题(帖子的主题)展开讨论,通过发帖功能发布新的话题,通过

5、回帖功能回复已有的话题,通过搜索功能查找已有的话题。管理员通过管理功能创建、编辑、删除论坛的版块,管理注册的用户,管理帖子等。只有注册的用户登录后才能发表和回复主题,浏览者(游客)只能浏览主题信息。根据用户的需求及上面的分析, BBS应该具备以下功能:显示各论坛类别及版面,查看版面下的所有根帖、查看自己发表的帖子、搜索帖子、查看根帖内容、用户注册、用户登录、发表帖子、回复帖子、进入后台、论坛类别管理、版面管理、用户管理和用户注册。2.2 可行性分析这里主要介绍技术可行性。该BBS的设计主要采用PHP、XML、MySQL、Dreamweaver 8、Eclipse等技术和工具,整体设计采用软件工

6、程的技术和方法,经过需求分析、总体设计、文档和代码的编制、模块测试和系统实现几个阶段。下面对这几种技术分别介绍。PHP技术PHP是一种服务器端、跨平台、HTML嵌入式的脚本语言。服务器端执行说明它是动态网页的一种,跨平台说明它可以同时运行在Linux、UNIX或者Windows上。另外还可以简单地嵌入到普通的HTML页中。PHP与ASP、JSP相比,它有多种服务器支持,也支持运行在多种操作系统上,另外PHP本身就是一种面向对象的编程语言。它同时支持MySQL、Oracle、Sybase、ODBC等多种数据库。MySQL 数据库MySQL是当前最流行的开放源代码数据库,它具有跨平台,独立存储引擎

7、、高级权限与安全系统、查询高速缓存、全文索引与检索等特性。MySQL是一个高性能、多线程、多用户、建立在客户-服务器结构上的RDBMS,专为速度和稳定性而设计。作为一个可靠的、富有特色的数据库系统,MySQL已经在商业、教育、科学和工程领域得到应用。并且它的低成本/高性能的价值表现也吸引了更多用户。B/S三层结构在B/S系统中,用户可以通过浏览器向分布在网络上的服务器发出请求,B/S结构极大地简化了客户机的工作,客户机只要安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。在B/S三层体系结构下,表示层、功能层、数据层被割成三个相对独立的单元

8、。第一层(表示层)Web浏览器:在表示层中包含系统的显示逻辑,位于客户端。它的任务是由Web浏览器向网络上的某一Web服务器提出服务请求,Web服务器对用户身份进行验证后通过HTTP协议将数据传送给客户端,客户机接受传来的网页文件,并将其显示到Web浏览器中。第二层(功能层)具有应用程序扩展功能的Web服务器:在功能层中包含系统的事物的处理逻辑,位于服务器端。它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库服务器提出数据处理申请,等数据库服务器将处理结果提交给Web服务器后,再由Web服务器传回客户端。第三层(数据层):数据库服务器:在数据层中

9、包含数据处理逻辑,位于数据库服务器端。它的任务是接受Web对数据库操作的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web服务器。在B/S结构下,整个系统的管理、资源分配、数据库操作、业务逻辑部件的管理及动态加载等工作都集中于应用服务器。同时,由于工作集中,可以降低客户机的管理难度及客户机配置。仅仅提高应用服务器和数据库服务器的品质,就可以提高整个系统的运行效率,从而有效地降低了应用系统的部署与管理的难度。XML工作原理XML全称为可扩展的标志语言,类似于HTML语言。XML作为描述信息的语言保存数据,可以使用XSL或CSS来格式化这些数据,使之以某种形式显示在浏览器上。还可以通

10、过解释器用编程的方法载入一个XML文档,再通过XML DOM(XML文档对象模型)访问、更新、创建和操纵该XML文档的信息3 系统设计3.1 系统目标对于典型的数据库管理系统,尤其是对论坛这样数据流量特别大的网络管理系统、必须要满足使用方便、操作灵活等设计需求。本系统在设计时应满足一下几个目标: 采用人机对话的操作方式,界面设计美观友好,信息查看灵活方便、快捷准确。数据存储安全可靠。 全面展示系统内所有分类的帖子,并进行分别显示。 为用户提供一个方便快捷的主题信息查看功能。 实现在线发表帖子、回复帖子的功能。 提供登录模块,主要用于管理员登录系统和发表帖子时留下发表者的信息。 用户随时都可以查

11、看自己发表的帖子。 对于用户输入的数据,要进行严格的检验,尽可能排除人为的错误。 系统最大限度的实现易维护性和易操作性。 系统运行稳定、安全可靠。3.2 系统功能模块设计按照论坛系统的功能可以将本系统分为前台和后台两大模块。用户在前台注册、登录,以及编辑个人的注册信息组成登录注册模块;用户浏览版块、浏览主题帖列表、查看帖子以及按条件搜索组成搜索模块;用户发帖、回帖组成发帖回帖模块;用户编辑、删除帖子组成编辑删除模块。以上四个模块是前台模块。后台模块都是与管理员相关的,其中管理员将管理选项、权限设置、删帖管理设置为版面管理模块;将备份数据库、配置选项、文字过滤、表情符号和恢复数据库设置为普通管理

12、模块;将版面的整体风格设置为风格管理模块,有新建、添加、输出和管理几个方面;将封锁管理、禁用账号、权限设定和等级管理设置为会员管理模块。后台模块也分为四个。如图所示。论坛系统前台模块后台模块登录注册模块发帖回帖模块编辑删除模块搜索模块版面管理模块普通管理模块会员管理模块风格管理模块下面具体介绍各个模块的功能3.2.1 登录注册模块登录模块包括以下的几个部分。登录:一般网站都具有的功能,提供会员登录到论坛窗口的功能。注册:提供游客成为会员的功能,这样可以享受更多的权限。游客只能浏览帖子,而会员不仅可以浏览帖子,还可以回复和发表帖子。编辑会员信息:当注册的用户用其注册时使用的用户名和密码登录论坛系

13、统后,可以对其注册时填写的资料进行编辑更改。3.2.2 发帖回帖模块包括以下几个部分。发帖:论坛的基本功能之一。会员可以就某个感兴趣的话题发表自己的看法,即发帖。回帖:论坛的基本功能之一。会员可以答复其他人提出的问题、看法等,即回帖。3.2.3 编辑删除模块包括:编辑,会员可以对自己发表过的帖子进行重新编辑修改;删除,会员当然可以删除自己发表的帖子。3.2.4 搜索模块包括:按关键字搜索,搜索功能的一种,按照帖子相关的内容关键字搜索;按作者名搜索,可以直接搜索其他某个会员发表的帖子。3.2.5 版面管理模块包括以下几个部分。管理选项:在管理选项中,管理员可以分别对版面和分区进行编辑。管理员可以

14、对版面进行添加、编辑、删除和移动操作,还可以对分区进行添加、编辑、删除和移动操作。(一个论坛可以分成许多分区,一个分区又有许多版面,一个版面还可以分成许多主题。)权限设定:在权限设定中,管理员可以设置访问分区或版面的权限,权限有公开、注册会员、注册会员隐藏、非公开、非公开隐藏、长老、长老隐藏。删帖管理:在删帖管理中,管理员可以计划删除几天内没有得到回复的主题。(假设在10天内某个主题还没有回复,系统则自动删除此主题,管理员只需要设置天数就可以了。)3.2.6 普通管理模块包括以下几个部分。备份数据库:管理员可以对本系统的所有资料数据进行备份,以防数据的丢失。备份分完整备份、结构备份和数据备份。

15、恢复数据库:在系统遭到攻击崩溃时,可以使用恢复数据库功能对系统的数据重新回复。文字过滤:在这个控制面板里管理员可以建立、编辑及删除过滤文字。这些指定的文字将会被过滤并以替换文字显示。另外会员也将无法使用含有这些被限定文字的名称来注册。配置选项:在这个控制面板里管理员可以对面板的基本内容进行设置,还可以进行Cookies设置、会员设置和私人留言设置等。群体信件:在这个控制面板里管理员可以发送电子邮件给所有的会员。表情符号:这个控制面板中管理员可以对发帖、回帖时使用到的表情符号进行编辑或删除操作。3.2.7 会员管理模块包括以下几个部分。封锁管理:这个控制面板中管理员可以对会员的信息进行封锁,比如

16、说可以封锁一个指定的会员,一个指定范围内的IP地址或计算机主机名称,这些方法禁止被封锁的会员进入论坛首页。也可以指定封锁电子邮件地址来防止注册会员使用不同的账号重复注册。管理选项:在这个控制面板中管理员可以变更会员的个人资料以及现存的特殊选项。禁用账号:在这个控制面板中管理员可以控制禁用会员的账号名称,但是已经注册的账号是无法禁用的。权限设定:在这个控制面板中管理员可以更改会员的权限设定及指定管理员资格。等级管理:在这个控制面板中管理员可以增加、编辑、浏览以及删除等级,也可以使用等级应用于会员管理功能。3.3 数据库设计数据库设计在项目开发中是非常重要的一个环节,它影响着后期的系统维护、变更和

17、扩充,甚至在整个系统开发中,都会引起很大的问题。本论坛系统后台数据库采用的是MySQL5.0,数据库名称为db-bbs,根据系统的功能需求,本系统设置了11张表,主要的几张表如下。1 phpbb_forums表该表保存了论坛的基本信息,如论坛编号、论坛名称、论坛说明、论坛帖子数等。如表1:表1:phpbb_forums表字段名类型长度允许为空是否主键描述forum_idsmallint5否是论坛编号cat_idmediumint8否否讨论区编号forum_namevarchar150是否版面名称forum_desctext/是否论坛说明forum_statustinyint4否否论坛状态for

18、um_ordermediumint8否否论坛顺序forum_postsmediumint8否否论坛帖子数forum_topicsmediumint8否否论坛主题数forum_last_post_idmediumint8否否最后一个帖子号auth_viewtinyint2否否查看权限auth_readtinyint2否否阅读权限auth_posttinyint2否否发帖权限auth_replytinyint2否否回帖权限auth_edittinyint2否否编辑权限auth_deletetinyint2否否删除权限auth_stickytinyint2否否粘贴权限auth_votetinyint

19、2否否投票权限auth_pollcreatetinyint2否否创建投票权限auth_attachmentstinyint2否否附件权限2 phpbb_topics表该表保存了论坛中主题的基本信息,如主题编号、主题名称、主题答复等。各字段信息如表2:表2:phpbb_topics表字段名类型长度允许为空是否主键描述topic_idmediumint8否否主题编号forum_idsmallint8否否论坛编号topic_titlechar60否否主题名称topic_postermediumint8否否主题帖子topic_timeint11否否主题发表时间topic_repliesmediumin

20、t8否否主题回复数topic_statustinyint3否否主题状态topic_votetinyint1否否是否投票topic_typetinyint3否否主题类型topic_first_post_idmediumint8否否主题首帖编号topic_last_post_idmediumint8否否主题末帖编号topic_moved_idmediumint8否否主题移动编号3 phpbb_users表该表保存了注册会员的基本信息,包括用户名、密码、E-mail等个人信息。各字段信息如表3:表3:phpbb_users表字段名类型长度允许空主键描述user_idmediumint8否是用户编号u

21、ser_activetinyint11是否用户活动性user_namevarchar25否否用户名user_passwordvarchar32否否用户密码user_lastvisitint11否否用户上次登录user_regdateint11否否用户注册日期user_leveltinyint4是否用户等级user_postsmediumint8否否用户帖子数user_styletinyint4是否用户风格user_langvarchar255是否用户个性签名user_unread_privmsgsmallint5否否未读私密信件user_last_privmsgint11否否上一私密信件use

22、r_login_triessmallint5否否尝试登录次数user_emailtimeint11是否信件时间user_viewemailtinyint1是否查看邮件user_attachsigtinyint1是否附加个性签名user_allowsmiletinyint1是否允许加入表情user_allowavatartinyint1否否允许具体描述user_allow_pmtinyint1否否允许私有邮件user_notifytinyint1否否回帖通知user_notify_pmtinyint1否否私有邮件通知user_rankint11是否用户分类user_avatarvarchar10

23、0是否用户具体描述user_emailvarchar255是否用户Emailuser_icqvarchar15是否用户IQCuser_websitevarchar100是否用户网站user_fromvarchar100是否用户来自user_sigtext/是否用户签名user_aimvarchar255是否用户现居地user_msnmvarchar255是否用户msnuser_interrestsvarchar255是否用户兴趣user_actkeyvarchar32是否用户职业4 phpbb_categories表该表保存了讨论区的基本信息,比如讨论区的编号、名称等。各字段信息具体如表4:表

24、4:phpbb_categories表字段名类型长度允许为空是否主键描述cat_idmediumint8否是讨论区编号cat_titlevarchar100否否讨论区标题cat_ordermediumint8否否讨论去顺序5 phpbb_posts表该表保存了所有帖子的主要信息,包括帖子号、发帖者编号、发表时间等,如表5。表5:phpbb_posts表字段名类型长度允许为空是否主键描述post_idmediumint8否是帖子编号topic_idmediumint8否否主题编号forum_idsmallint5否否论坛编号poster_idmediumint8否否发帖者编号post_timei

25、nt11否否发表时间poster_ipchar8否否发帖者IPenable_smiliestinyint1否否允许使用表情enable_sigtinyint1否否允许使用签名post_edit_timeint11是否帖子编辑时间post_edit_countsmallint5否否帖子编辑次数6 phpbb_posts_text表该表保存了所有的帖子,包括发帖和回帖的名称和内容。各字段的具体内容如表6:表6:phpbb_post_text表字段名类型长度允许为空是否主键描述post_idmediumint8否是帖子编号post_subjectchar60是否帖子名称post_texttext/是

26、否帖子内容7 phpbb_themes表该表保存了系统的显示风格设置,如背景颜色、文字样式、字体颜色等。各字段内容如表7:表7:phpbb_themes表字段名类型长度允许为空是否主键描述themes_idmediumint8否是主题编号style_namevarchar30否否风格名称body_backgroundvarchar100是否body背景图片 body_bgcolorvarchar6是否Body背景色body_textvarchar6是否Body文本body_linkvarchar6是否正常链接颜色body_vlinkvarchar6是否已点击链接色body_alinkvarch

27、ar6是否鼠标按下链接色body_hlinkvarchar6是否鼠标移过链接色tr_color1varchar6是否行颜色1tr_color2varchar6是否行颜色2tr_color3varchar6是否行颜色3th_color1varchar6是否表格头颜色1th_color2varchar6是否表格头颜色2th_color3varchar6是否表格头颜色3td_color1varchar6是否列颜色1td_color2varchar6是否列颜色2td_color3varchar6是否列颜色3fontsize1tinyint4是否字体大小1fontsize2tinyint4是否字体大小2

28、fontsize3tinyint4是否字体大小3fontcolor1varchar6是否字体颜色1fontcolor2varchar6是否字体颜色2fontcolor3varchar6是否字体颜色34 系统的实现4.1 通用类实现为了使代码能够重复利用,实现代码的重用性,可以把一些常用的功能代码单独写在一个文件内,如连接数据库代码,头部和尾部文件等。在使用时可以用include关键字把这些代码包含到文件中,可以减少代码的重复。4.1.1 连接数据库文件文件db.php即为连接数据库的文件,该文件被放在includes目录下。代码如下:db_connect_id)message_die(CRIT

29、ICAL_ERROR, 不能连接数据库!);?以上代码执行的步骤如下所示:a) 应用“if(!defined(IN_PHPBB)”语句判断是否定义常量,如果没有定义则提示错误信息b) 应用“swith($dbms)”语句获取用户使用的数据库名称,不同的数据库包含不同的数据库操作文件c) 应用“$db=new sql_db($dbhost,$dbuser,$dbpassword,$dbname,false)” 语句建立一个数据库连接对象。d) 判断数据库是否连接成功,如果连接失败,则提示“不能连接数据库”。4.1.2 数据库操作类整个类的定义在mysql.php文件中,类的定义及其属性的定义如下

30、所示:在以上代码中,首先判断是否定义常量,如果没有定义,则使用define()函数定义常量。然后,定义一个名为sql_db的类,也为该类定义了多个属性。同时,在sql_db类中定义多个方法,在其中定义了一个选择数据库的函数sql_db()。如下所示:/选择数据库function sql_db($sqlserver, $sqluser, $sqlpassword, $database, $persistency = true)/设置属性的值$this-persistency = $persistency;$this-user = $sqluser;$this-password = $sqlpas

31、sword;$this-server = $sqlserver;$this-dbname = $database;if($this-persistency)/连接MySQL服务器$this-db_connect_id = mysql_pconnect($this-server, $this-user, $this-password);else$this-db_connect_id = mysql_connect($this-server, $this-user, $this-password);if($this-db_connect_id)/判断数据库名是否为空if($database !=

32、)/获取数据库的名称$this-dbname = $database;/选择数据库$dbselect = mysql_select_db($this-dbname);/如果没有选择到数据库 if(!$dbselect)/关闭数据库mysql_close($this-db_connect_id);$this-db_connect_id = $dbselect;return $this-db_connect_id;elsereturn false;以上代码的执行的步骤如下所示:a) 设置使用的数据库、数据库服务器、用户名和密码的值等。b) 分别使用mysql_pconnect()函数和mysql_

33、connect()函数连接MySQL数据库服务器。其中,mysql_pconnect()函数用于打开一个到MySQL服务器的持久连接,而mysql_connect()函数用于打开一个到MySQL服务器的连接。c) 应用“$dbselect=mysql_select_db($this-dbname)”语句选择服务器上的数据库。d) 应用“if(!dbselect)”语句判断是否选择数据库,如果没有选择数据库,则调用mysql_close()函数关闭数据库连接。另外mysql.php中还定义了一个关闭数据库的函数,函数名为sql_close(),该函数的具体执行操作为:应用“if($this-db

34、_connect_id)”语句判断是否连接了数据库服务器,如果连接了,则使用mysql_free_result()函数释放连接到服务器的所有空间。调用mysql_close()函数关闭数据库连接,如果关闭成功,则应用“return $result”语句返回关闭的结果,如果关闭失败,则返回false。以下代码定义了执行SQL语句的函数,函数名为sql_query()。/SQL语句执行函数function sql_query($query = , $transaction = FALSE)/释放内存unset($this-query_result);/判断语句是否为空if($query != )$

35、this-num_queries+;/获取执行结果$this-query_result = mysql_query($query, $this-db_connect_id);if($this-query_result)/如果存在查询结果,则释放内存unset($this-row$this-query_result);unset($this-rowset$this-query_result);/返回query_result执行结果return $this-query_result;elsereturn ( $transaction = END_TRANSACTION ) ? true : fal

36、se;以上代码执行过程如下:应用“unset($this-query_result)”语句释放内存空间;应用“if($query != )”语句判断执行的字符串是否为空,如果不为空,则调用mysql_query函数执行SQL语句。在mysql.php中还定义了一个获取数据集的行的函数,函数名为sql_numrows()。主要是通过应用“$query_id = $this-query_result;”语句获取执行SQL语句的结果;根据执行SQL语句的结果,调用mysql_num_rows()函数获取数据集的行。mysql.php中也定义了对数据字段操作的函数,如下:function sql_af

37、fectedrows()function sql_numfields($query_id = 0)function sql_fieldname($offset, $query_id = 0)function sql_fieldtype($offset, $query_id = 0)function sql_fetchrow($query_id = 0)以上各个函数的功能和该功能的具体实现如下所示:a) 在sql_affectedrows()函数中,主要通过mysql_affected_rows()函数获区前一次MySQL操作所影响的记录行数。b) 在sql_numfields()函数中,主要通

38、过mysql_num_fields()函数获取数据集中字段的数目。c) 在sql_fieldname()函数中,主要通过mysql_field_name()函数获取结果集中指定字段的字段名。d) 在sql_fieldtype()函数中,主要通过mysql_field_type()函数获得指定字段的类型。e) 在sql_fetchrow()函数中,主要通过mysql_fetch_array()函数从结果集中取得一行作为关联数组。另外,mysql.php中还有两个函数,sql_freeresult()函数和sql_error()函数,主要是用于释放变量空间和当程序对数据库操作出现错误时,提示出错信

39、息。如下:function sql_freeresult($query_id = 0)function sql_error($query_id = 0)这两个函数的具体功能和该功能的具体实现方法为:在sql_freeresult()函数中,主要通过mysql_free_result()释放指定变量的空间,如果释放成功则返回为true,释放失败,则返回false;在sql_error()函数中,主要通过mysql_error()函数返回执行SQL语句产生的错误信息。4.2 前台模块的实现4.2.1 论坛主页论坛首页自上而下可以分为3个部分,最上面的是导航部分,中间是论坛的主要部分即版块列表,最下

40、面是用户及论坛的一些情况。如图1其中最上面和最下面的部分基本上是不会发生变化的,所以把它们做成公用的文件,然后使用包含语句将其包含到要使用的页面中。包含文件使用的include指令为图1首页使用include关键字包含了多个文件,分别是extension.inc、common.php和page_tail.php文件等。这些文件中:应用“$total_posts = get_db_stat(postcount);”语句获取总帖子数。应用“$total_users = get_db_stat(usercount);”来获取注册会员数。应用“$newest_userdata = get_db_sta

41、t(newestuser);”获取最新注册会员数。如果帖子总数为0,则显示示没有帖子。4.2.2 注册登录模块在用户注册模块主要由3部分组成,分别是注册信息、个人信息和选项,其中注册信息是必须填的,其它两项是可选项。在用户提交信息之后,系统要验证输入信息是否合法,具体包括必选项是否有空白、Email格式是否正确、两次密码是否一致、用户名是否已经存在、Email是否已经使用过等。这些信息的验证分别通过sql_query()函数(执行查询操作)、preg_match()函数(验证Email格式是否合格)等。用户输入信息无误后,应用insert关键字,定义一个插入用户信息的字符串,通过执行插入语句,插入记录。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号