已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
论文PHP论 坛开发 论文(定稿) 西南林业大学本科毕业(设计)论文(二一一届)题目基于PHP的论坛设计与开发分院系部计算机与信息学院专业计算机科学与技术姓名张文山导师姓名孙永科导师职称讲师二一一年六月基于PHP的论坛设计与开发张文山(西南林学院计算机与信息科学系,云南昆明650224)摘要随着信息技术和网络技术的飞速发展,互联网与人们的生活日益紧密相连,它们也应用到了社会各个领域。 人们上网浏览的时间也越来越久,各类社交,论坛等社区也日益火爆。 本论坛采用PHP为开发技术,JavaScript为脚本语言,MySQL为数据库,完成本论坛的设计开发。 主要功能有用户注册、登录,发布新帖、回复帖子,个人信息查看,管理员删除普通用户,删除帖子,帖子置顶等功能。 越来越多的人会抽出一部分时间进行网上浏览,进入社区论坛与他人进行交流。 同时PHP语言也是日益成熟,功能相对强大。 为了赶上飞速发展的技术,熟悉论坛的扩展功能,赶上时代的步伐,所以用PHP语言设计开发了本论坛。 1.1研究目的及内容论坛在人们生活中日渐重要,更多的人会选择用一部分时间对自己感兴趣的论坛社区进行浏览,从而获取自己想要的内容,也可以在论坛上发布新闻以及其他专业知识等各方面内容。 PHP是一种简单而强大的开源脚本语言,用于创建动态Web内容。 数百万靠PHP工作的Web站点证明了它的受欢迎程度和使用的简易性。 程序员和Web设计师都愿意使用PHP,前者欣赏它的灵活性和速度,后者则喜欢它的易用和方便。 用PHP语言结合MySQL数据进行开发的论坛,具有响应速度快,编码简便等特点,同时又具有了常规论坛的功能。 又PHP是属于html嵌套语言,可以方便代码编写,操作更加随意方便。 该论坛主要完成以下功能A用户操作用户注册,用户登录、注销,发布新帖,回复帖子,查看个人信息等操作。 B管理员操作普通用户删除,帖子删除,置顶功能。 1.2成果及前景在学习了解了PHP与MySQL的配合开发环境,并对其编程的语言进行初步熟悉后,完成了此次论坛的设计开发,并对其进行了测试。 PHP能发展起来有三个原因基于Web量身定制,Web语言的首选,LAMP架构安全稳定简单,开发快速,扩展性强PHP企业级应用的发展基于Web量身定制,Web语言的首选,安全稳定。 EDC在xx年的统计信息表明PHP已经跻身全球三个编程语言的行列,并且其是以Web脚本语言的身份参与竞争的。 相信PHP会在以后的各类网站开发中发挥自己特点,取得更大的发展与进步。 2国内外研究现状目前在各大网站云集的北京,PHP几乎是无处不在。 百度、新浪、搜狐、TOM等等各大互联网门户都在广泛使用这PHP。 同时,近两年来北京多处许多小型的门户站点,也是大部分使用了PHP的技术。 就连PHP的工程师需求量都大幅度提高。 为什么PHP可以在近年来发展如此迅速呢。 其实跟Web的迅猛发展是紧密联系在一起的。 另外,LAMP的迅速发展使得PHP的应用也更加广泛了。 PHP企业级应用的发展众所周知,PHP历来被认为是草根阶层的编程语言。 因此困扰PHP发展的很大因素就是大企业的认可。 政府、大企业等PHP项目的增加在近几年的表现也是很突出的,这点可能在国外比较明显,它大幅度地提高了大家在选择PHP时候的信心。 从这两年全球的PHP年会来看,许多的大厂商都开始纷纷关注PHP,参加年会。 甚至于像IBM、Oracle等公司直接与Zend公司进行合作,推广并提高PHP在大型项目里面的功能。 PHP目前正处于发展的高峰期,而对于国内来说可能还没有迎来最高峰的时候,所以对于国内喜欢PHP的人来说,应该还有很多机会等待着他们把握。 随着Web2.0的升温互联网的发展迎来新一轮的热潮,由于互联网本身的快速发展、不断创新的特点,决定了只有以最快开发速度和最低成本,才能取胜,才能始终保持一个网站的领先性和吸引更多的网民。 互联网的企业生存和竞争的核心在于技术,技术/研发人才永远是这些企业不可或缺的关键人物,只有拥有资深的人才和领先的技术,才能在最短的时间内创造出优秀的网络应用。 PHP技术和相关的人才,正是迎合目前的互联网的发展趋势,PHP作为非常优秀的、简便的Web开发语言,和Linux,Apache,MySQL紧密结合,形成LAMP的开源黄金组合,不仅降低使用成本,还提升了开发速度,满足最新的互动式网络开发的应用。 从Web开发的历史看来,PHP、Python和Ruby几乎是同时出现的,都是十分有特点的、优秀的开源语言,但PHP却获得了比Python和Ruby多得多的关注度,PHP在11月TIOBE排行榜上位居榜首,超过了C+、java和其他语言。 PHP、C+、java这三种语言都是相当优秀的脚本语言,为什么PHP能大行其道,位居榜首呢?从表面上来看,这是就业环境使然。 越来越多的新公司或者新项目使用PHP,这使得PHP相关社区越来越活跃,而这又反过来影响到很多项目或公司的选择,形成一个良性的循环。 就我们目前了解到的情况,PHP是国内大部分web项目的首选,而且有很多公司从其它语言(如ASP,JAVA)转到了PHP。 合适的就是最好的,PHP的快速,开发成本低,周期短,后期维护费用低,开源产品丰富,这些都是另外两种语言无法比拟的。 随着Web2.0的升温互联网的发展迎来新一轮的热潮,由于互联网本身的快速发展、不断创新的特点,决定了只有以最快开发速度和最低成本,才能取胜,才能始终保持一个网站的领先性和吸引更多的网民。 互联网的企业生存和竞争的核心在于技术,技术、研发人才永远是这些企业不可或缺的关键人物,只有拥有资深的人才和领先的技术,才能在最短的时间内创造出优秀的网络应用。 PHP技术和相关的人才,正是迎合目前的互联网的发展趋势,PHP作为非常优秀的、简便的Web开发语言,和Linux,Apache,MySQL紧密结合,形成LAMP的开源黄金组合,不仅降低使用成本,还提升了开发速度,满足最新的互动式网络开发的应用。 因此,在IT业和互联网的超速发展的时代,企业对PHP程序员的需求也大量增加,PHP程序员和招聘岗位的供求比例是140,很多公司半年都招不到一个合适的PHP程序员。 这个岗位是程序员中最火的,这种严重供不应求的局面在未来几年中也将愈演愈烈。 3理论依据本论坛是基于PHP语言所搭建的,PHP是较快速的开发语言,PHP是一种强大的CGI脚本语言,语法混合了C、Java、Perl和PHP式的新语法。 网页执行速度较其他语言快速。 MySQL由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。 3.1工具选择3.1.1界面工具界面设计采用了PHOTOSHOP、DREAMWARE软件。 通过PHOTOSHOP进行论坛所需的图片处理,以达到较好的视觉效果。 3.1.2编程语言编程语言采用了PHP和JavaScript语言进行开发。 PHP是一种跨平台的服务器端的嵌入式脚本语言。 它大量地借用C、Java和Perl语言的语法,并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面。 它支持目前绝大多数数据库。 还有一点,PHP是完全的,不用花钱,可以从PHP官方站点(.php.)自由下载。 而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色。 3.1.3后台数据库数据库采用了MySQL设计,MySQL是一个精巧的SQL数据库管理系统,虽然它不是开放源代码的产品,但在某些情况下可以自由使用。 由于它的强大功能、灵活性、丰富的应用编程接口(API)以及精巧的系统结构,受到了广大自由软件爱好者甚至是商业软件用户的青睐。 3.2PHP概述PHP是一种简单而强大的开源脚本语言,用于创建动态Web内容。 数百万靠PHP工作的Web站点证明了它的受欢迎程度和使用的简易性。 程序员和Web设计师都愿意使用PHP,前者欣赏它的灵活性和速度,后者则喜欢它的易用和方便。 PHP的特点有在PHP代码中,所有的工作都运行在PHP的内存空间中,也就是说PHP不是图同ASP基于对象的,所以的它的运行速度会快一些。 高级内容管理。 PHP与MySQL的组合既简单又精彩。 PHP有许多管理和维护MySQL的工具,对MySQL的支持是最全面的。 PHP支持结构化编程,在VB因为他的继承性使用类还是较少的。 而PHP的象Java和C+一样的继承性使一个大型的程序中到处都充满了类的影子。 PHP,当你发现Bug时,你可以修改他,如果你没有专家的水平,你可以请专家修改,并且你的修改会得到开放代码组织的接受和认可。 PHP代码可以运行在Solaris、Linux和许多其他的操作系统中。 3.3MySQL简介MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。 在xx年1月16号被Sun公司收购。 而xx年,SUN又被Oracle收购.对于Mysql的前途,没有任何人抱乐观的态度.目前MySQL被广泛地应用在Inter上的中小型网站中。 由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。 MySQL特点 (1).使用C和C+编写,并使用了多种编译器进行测试,保证源代码的可移植性。 (2).支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。 (3).为多种编程语言提供了API。 这些编程语言包括C、C+、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。 4).支持多线程,充分利用CPU资源 (5).优化的SQL查询算法,有效地提高查询速度 (6).既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名 (7).提供TCP/IP、ODBC和JDBC等多种数据库连接途径 (8).提供用于管理、检查、优化数据库操作的管理工具 (9).可以处理拥有上千万条记录的大型数据库4系统分析与设计以PHP为开发语言,首先熟悉其开发的环境与特点。 本论坛是在集成软件APMServ5.2.6下进行开发的。 APMServ5.2.6是一款拥有图形界面的快速搭建Apache2.2. 9、PHP5.2. 6、MySQL5.1.284.0. 26、phpMyAdmin2.11.9. 2、网站服务器平台的绿色软件。 4.1系统任务概述以PHP为开发语言,部分功能用JavaScript进行实现,以及MySQL为数据库开发,搭建在线论坛,在搭建过程中逐步熟悉PHP的开发过程以及其特点。 通过此次论坛的设计开发,了解到现今论坛的主流趋势,以及常规功能,对如后的工作学习有较大帮助。 4.2开发意图二十一世纪的互联网是飞速发展的阶段,各种编程技术不断推陈出新。 各种形式的程序作品等,不断以新的内容展现在人们生活中,为人们的生活增添乐趣,同时也使得人们更方便的做自己喜欢的内容。 极大丰富了人们的业余生活,提高人们的生活质量。 为了熟悉现阶段网络编程的PHP技术,以及熟悉论坛社区对人们生活的影响。 我用PHP以及MySQL开发了这个小型在线论坛。 4.3系统运行环境硬件环境要求其实本论坛对硬件要求较低,由于并没有测试论坛运行环境的最低限度是多少,所有就以当前常规计算机为基本。 应为586以上任意机型,2GB以上可用硬盘空间。 (2)软件环境要求PHP可以在Linux和Windows下运行。 本论坛是在Windows XP3的环境下进行开发。 通过安装IIS即可让论坛顺利运行。 推荐使用Windows2000以上版本。 4.4数据库设计本数据库是采用MySQL进行开发,phpMyAdmin采用图形界面进行数据库操作,方便用户对数据库进行管理。 图4-1phpMyAdmin操作界面用户表结构如下表4-1用户表字段类型Null默认说明username varchar (20)GB2312否用户名password varchar (20)GB2312否密码sex char (2)GB2312否男性别email varchar (20)GB2312否邮箱qq varchar (20)GB2312否QQ signtext GB2312否个性签名regtime datetime否注册时间style char (1)GB2312否0用户类别板块表结构如下表4-2板块表字段类型Null说明plate varchar (20)GB2312否板块plater varchar (20)GB2312否管理员发帖表结构如下表4-3发帖表字段类型Null默认说明topic varchar (20)GB2312否主题username varchar (20)GB2312否用户名content textGB2312否内容plate varchar (20)GB2312否板块pubtime datetime否发表时间回帖表结构如下表4-4回帖表字段类型Null说明topic varchar (20)GB2312否主题username varchar (20)GB2312否用户名recontent textGB2312否回复内容retime datetimeGB2312否回复时间5功能与实现本次设计只是较简单得实现了论坛的部分功能,用户操作以及管理员后台操作。 主要是用户的注册、登录、查看、发表、回复等内容,以及管理员的对用户以及帖子的简单操作。 5.1系统功能概述用户操作注册登录发帖回帖查看个人信息管理员操作用户删除帖子删除帖子置顶结构图如下.图5-1功能结构图论坛系统前台功能后台功能登录注册注销查看发表回复帖子用户管理帖子管理个人信息查询5.2系统流程分析当用户浏览到论坛首页时,只能进行帖子的浏览操作,身份即为游客,不能进行帖子回复,发布新帖等操作。 与论坛的交互性较为缺乏。 只有在论坛进行了会员注册后,才能进行后续操作。 从而与论坛互动,与其他会员进行沟通等。 以达到信息的沟通,交流等。 当用户已经注册为本论坛会员时,就可以登录到论坛,进行后续操作。 本论坛的会员存在两种身份,普通会员和论坛管理员。 论坛管理员登录后,除了普通会员的发帖、回帖外,还可以对论坛进行管理操作,包括对普通用户的管理和对帖子内容的管理。 5.3登录程序设计本程序的主页面是index.php,主要功能是罗列出论坛后台的所有帖子。 可以进行浏览帖子功能。 主页包括left.php,left.php的主要功能是身份验证。 通过$_SESSIONusername来进行判断用户是否输入了用户名。 再通过判断用户输入的用户名,密码和验证码是否正确,确定是否有权限登录到主页。 成功登录的用户可以进行发帖、回复等操作,还可以通过点击“我的地盘”查看用户的个人信息。 若是有某项内容不正确,如用户名、密码或者图片验证码错误,则无法登录。 登录界面如图5-1图5-2用户登录界面关键代码如下登录到论坛之后会对用户类型进行判断,如果是管理员则添加显示论坛管理按钮。 对用户判断即为对“style”进行判断,如果“style”为“0”,说明登录用户是论坛管理员,除了常规操作外,添加个“论坛管理”按钮,可以对论坛中的帖子,普通用户进行管理操作。 可以删除普通用户,删除帖子,还可以对发布的帖子进行置顶操作。 若为普通用户,则不显示“论坛管理”按钮,只能进行发帖,回复,查看个人信息等操作。 管理员登录后界面如图5-2图5-3登录成功5.4主页程序设计主页主要是显示用户所有的发帖回帖内容,以标题的形式列出来。 在显示过程中应用到了PHP的分页技术。 通过PHP的自带函数对数据库的内容进行浏览,统计出总共的记录数,然后再设定每页的记录数,从而得到总页数。 在主页上进行显示。 方便用户浏览以及其他操作,同时也使得页面更加美观。 $nums=mysql_num_rows($res);/取得总记录数$pagesize=8;/设定每页的记录数$pages=ceil($nums/$pagesize);/取得总页数if($pages$pages)$page=$pages;/如果传递过来的页数比总页数还大,就让它等于总页数if($page1)$page=1;/如果传递过来的页数小于1,就让他等于1$kaishi=($page-1)*$pagesize;/为下一步做准备,limit的初始记录$sql=select*from pub where plate=科技前沿order bystyle,pubtime desclimit$kaishi,$pagesize;/取得记录从计算出的初始值开始,一共$pagesize条5.5在线文本器本论坛用到的文本器是KindEditor。 KindEditor是一套开源的HTML可视化器,主要用于让用户在网站上获得所见即所得效果,兼容IE、Firefox、Chrome、Safari、Opera等主流浏览器。 KindEditor使用JavaScript编写,可以无缝的于Java、.NET、PHP、ASP等程序接合。 KindEditor非常适合在CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用,xx年7月首次发布2.0以来,KindEditor依靠出色的用户体验和领先的技术不断扩大器市场占有率,目前在国内已经成为最受欢迎的器之一。 KindEditor的特点如下1.体积小,加载速度快,但功能十分丰富。 2.内置自定义range,完美地支持span标记。 3.基于插件的方式设计,所有功能都是插件,增加自定义和扩展功能非常简单。 4.修改器风格很容易,只需修改一个CSS文件。 5.支持大部分主流浏览器,比如IE、Firefox、Safari、Chrome、Opera。 5.6发帖程序设计发布新帖主要是用户觉得自己有什么新的内容,新鲜事情,便可以发布出来与其他会员进行分享交流。 增强与其他会员的互动。 通过$_SESSIONusername获得登录的用户名,$_POSTcontent获得用户在文本框输入的文本内容,并取得当前时间now(),确定用户发表的内容是从属于哪个版块$_POSTplate。 将所有内容添加到“pub”数据表中。 发布新帖如图5-3图5-4用户发新帖5.7管理员操作程序设计当管理员点击论坛管理按钮后,跳转到“master.php”页面,从而进行后台操作。 主要分为“用户管理”和“帖子管理”两部分进行操作。 5.7.1用户管理主要是论坛管理员对普通用户进行操作,现阶段的主要功能是当觉得某些会员的言论对其他会员的正常论坛生活干扰时,将其删除,保证论坛其他会员的权益。 当跳转到此页面时,会从数据库中读取所有的普通会员的用户名,每个会员名字后面会有一个删除按钮,对其进行删除操作。 5.7.2帖子管理主要是当觉得某些帖子的内容存在不适当的言论时,可以对特定帖子进行删除操作。 当觉得某些帖子的内容精彩时,可以将其置顶,从而让其他会员能够较方便的发现这些精彩内容。 帖子管理则是从数据库中读取所有的用户发帖,每个帖子名称后有“删除按钮”和“推荐到首页”按钮,对其进行删除操作和置顶操作。 管理员操作界面如图5-4图5-5管理员操作界面关键代码如下$username=$_GETusername;$res=mysql_query(delete fromuserwhereusername=.$username.);echo ;exit;$topic=$_GETtopic;$res=mysql_query(delete frompub wheretopic=.$topic.);echo ;exit;$topic=$_GETtopic;mysql_query(UPDATE pubSET style=1WHERE topic=.$topic.);/$res=mysql_query(delete frompubwheretopic=.$topic.);echo ;exit;用户觉得某些主题的内容较为喜欢时,可以对其进行回复操作。 帖子内容下方显示一个文本器,就是上文所介绍到Kindeditor器。 用户在文本框内输入自己的回复内容,点击发表即可。 用户回复界面如图5-5图5-6回复操作界面6结论本文以PHP为开发技术,加之JavaScript进行辅助,以MySQL为数据库进行设计开发。 通过学习PHP语言,加深对PHP的了解与运用。 并且通过论坛的设计,了解了部分现今网络中论坛的简单功能。 简单的设计了论坛的功能用户注册,登录,发帖,回帖,管理员对用户以及帖子内容进行管理。 在最近几年年我们可以看到企业对PHP使用更加广泛,与此同时对PHP相关的Web开发人才需求更是急速升温;分析中国不同行业的网站,我们可以看到国内,包括Google、百度、网易、新浪、搜狐、阿里巴巴、奇虎、eBay、腾讯、Yahoo、金山等的各大网站都在寻求PHP高手。 今年各类企业发布招聘PHP人才信息,对人才的需求量极大,但是因为国内PHP人才贮备的不足、培训体系的不健全以及国内Web开发人员对PHP的价值认识不够,造成PHP人才非常稀缺。 随着Web2.0的升温互联网的发展迎来新一轮的热潮,由于互联网本身的快速发展、不断创新的特点,决定了只有以最快开发速度和最低成本,才能取胜,才能始终保持一个网站的领先性和吸引更多的网民。 互联网的企业生存和竞争的核心在于技术,技术、研发人才永远是这些企业不可或缺的关键人物,只有拥有资深的人才和领先的技术,才能在最短的时间内创造出优秀的网络应用。 PHP技术和相关的人才,正是迎合目前的互联网的发展趋势,PHP作为非常优秀的、简便的Web开发语言,和Linux,Apache,MySQL紧密结合,形成LAMP的开源黄金组合,不仅降低使用成本,还提升了开发速度,满足最新的互动式网络开发的应用。 在无孔不入的互联网应用环境下,Web2. 0、云计算、物联网等新概念将不断催生出新的产业和服务。 而支撑这些新型产业和服务的技术体系非PHP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年食品安全知识竞赛团体抢答题库
- 2026年三力测试专项能力题库
- 2026年国企合规管理体系成熟度分级与定级程序考核
- 2026年能源行业节能减排政策单选题目
- 2026年及未来5年市场数据中国汽车继电器电商行业发展监测及投资战略数据分析研究报告
- 2026年上海宝山区中考二模语文模拟试卷试题(含答案详解)
- 2026年幼儿园谜语活动
- 2026年幼儿园园长分享会
- 2026年幼儿园珍惜水资源
- 智慧水上巴士-未来城市交通新选择
- 16.2 《六国论》课件(内嵌视频)2025-2026学年统编版高一语文必修下册
- 2026年社区护理概述及国外进展-社区护理学课件
- 2026年7下语文试卷及答案
- 2025年青岛市教师公开招聘真题及答案
- 2025年公安机关基本级执法资格考试真题试卷(含答案)
- 电气控制与PLC应用技术 (S7-1200)-教案 模块3 S7-1200 PLC的基本指令及其应用
- 2026合肥源创新人才发展有限公司社会招聘5人备考题库及参考答案详解(考试直接用)
- 2026年入团考试试卷真题及答案
- 广东省韶关市仁化县2024-2025学年八年级下学期历史期中检测题(无答案)
- 通信设备制造项目厂房与配套设施建筑工程施工设计方案
- 2026年云南事业单位招聘面试题目及答案
评论
0/150
提交评论