毕业设计视频播客系统的设计与实现_第1页
毕业设计视频播客系统的设计与实现_第2页
毕业设计视频播客系统的设计与实现_第3页
毕业设计视频播客系统的设计与实现_第4页
毕业设计视频播客系统的设计与实现_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

吉林省高等教育自学考试毕业论文论文题目:视频播客系统的设计与实现专业:计算机应用软件准考证号:018109101119 学生姓名:李轶群指导教师:2012年8月吉林省自学考试计算机应用软件专业本科生毕业论文PAGEVI视频播客系统的设计与实现 第34页共32页-摘要随着计算机的普及和网络的发展,人们的生活越来越依赖于电脑,也越来越习惯于在网上听音乐、看电影。目前,互联网上供人们听音乐、看影视的网站已经很多,其发展也日趋成熟,电影爱好者有其鲜明的特性,他们喜欢、关注的影音信息也有其共同特点。因此,特别针这样的群体设计并实现一个供他们在线视听、分享、交流影音信息的平台,显得更为重要。目前,在互联网上有很多供网友收听音乐、下载音乐、在线点歌,观看影视、下载视频、的网站。此类网站是随着互联网的发展,近几年刚刚兴起的,它们在网络上已非常受欢迎,不仅丰富了人们的娱乐生活,也为人们提供了非常方便的影音信息资源交流。在线影视播放网站一般采用目前Internet上较流行的网站构架方式LAMP(Linux+Apache+MySQL+PHP),由于所使用的四种软件都是遵循GPL的开放源码软件,因此使用这种构架方式只需要较低的开发成本就能建立起一个稳定、免费的网站系统。视频播客系统主要采用多媒体引用技术播放影音文件,网站则采用文件上传和下载技术实现图像、音频、视频文件的客户端上传和下载。网络上影音资源纷乱繁杂,人们想要找到适合自己并且乐于关注的影音资源往往费时费力。一个为好的视频播客系统的分享、交流影音信息而专门设计的该系统,就能为他们节省很多时间,并提供更多有用的信息。它由多个功能模块组成,前台页面包括:在线视听页面,上传页面,下载页面,影音信息查看页面,信息查询页面,会员操作页面等;后台页面包括:登录日志管理页面,管理员对数据的管理页面,管理员对会员的管理页面以及目录管理页面。其中,前台主要实现在线视听、影视音乐上传、影视音乐下载、在线点歌等功能;后台主要用于管理员对影视音乐数据信息和登录日志进行管理。本系统主要提供在线视听、影视音乐资源交流分享等功能,同时,提供会员注册,用户可以注册并登录管理自己的个人信息,可以搜索视听影音信息,会员登录以后可以上传或下载影音资源,并且可以在线点歌等功能。系统设一个管理员账号,可对会员登录、影视音乐目录、数据信息和登录日志等进行管理。该系统具有以下的特点:(1)基于PHP的相关技术设计本系统;(2)采用多媒体引用技术播放影音文件;(3)采用文件上传和下载技术实现图像、音频、视频文件的客户端的上传和下载;(4)信息搜索灵活、方便。关键词视频播客系统;PHP;MYSQL;APACHE

AbstractWiththepopularityofcomputerandthedevelopmentofthenetwork,thelifeofpeoplerelymoreandmoreoncomputers,alsomoreandmoreusedtolistentomusicontheInternet,movies.Atpresent,Therehasbeenalotofwebsiteforpeopletolistentomusic,watchingmovies.itsdevelopmenthasbecomemoreandmoremature,thefilmlovershaveadistinctcharacteristics,Videoinformationtheylikeandattentionalsohasitscommonfeatures.Therefore,Specialneedlesuchgroupsdesignandimplementaonlineaudio-visual,shareandexchangeinformationplatformforthemisimportant.Atpresent,IntheInternethasmanywebsitesfornetfriendtolistenanddownloadwatchthemovieandTV,downloadvideo.ThiswebsiteiswiththedevelopmentofInternet,emerginginrecentyears,theyhaspopularonnetwork,Itnotonlyenrichpeopleentertainment,alsoprovidconvenientvideoinformationresourceexchangeforpeople.FilmandtelevisionplayonlinewebsitegeneralusethepresentmorepopularwebsiteontheInternetarchitecturewayLAMP(Linux+Apache+MySQL+PHP),duetotheuseoffourkindsofsoftwarearefollowGPLandopensourcesoftware,sousethisframeworkonlyneedlowerwaydevelopmentcostscansetupastable,freewebsystem.VideopodcastsystemmainlyUSESthemultimediaquotedtechnologyplayvideofiles,thewebsiteusedthefileuploadanddownloadtechnologytorealizeimage,audioandvideofilesclientuploadanddownload.Thenetworkvideoresourceschaosmultifarious,peoplewanttofindsuitablefortheirattentionandwillingtovideoresourcesoftentime-consuming.Agoodvideopodcastsystemfortheexchangeofinformationandsharevideo,specialdesignofthesystemcansavetimeandprovideusefulinformation.Itconsistsofmultiplefunctionmodules,frontdeskpageincludes:onlineaudio-visualpage,uploadpage,downloadpage,videoandaudioinformationviewpages,informationquerypage,memberpagesofoperation;Backstagepageincludes:loginlogmanagementpage,theadministratorofthedatamanagementpage,theadministratortomembersofthemanagementandmanagementpagedirectorypage.Amongthem,thefrontdeskmainlyrealizesuchastheonlinemusic,filmandTVuploaddownloadmusic,filmandtelevision,onlinefunction;Thebackgroundismainlyusedforadministratorforfilmandtelevisionmusicdatainformationandloginlogmanagement.Thissystemprovideonlineaudio-visual,filmandTVmusicsharingandotherfunctions,Atthesametime,Italsoprovidestheregister,theusercanregisterandlogintomanagehisownpersonalinformation,andsearchaudio-visualvideoinformation,memberscanuploadordownloadafterloginvideoresources,beonlinesong.Tosetupasystemadministratoraccount,maytothememberlogin,filmdatainformationandloginlogmanagementThesystemhasfollowingcharacteristics:(1)basedontherelevanttechnologyofthePHPdesignedsystem;(2)usingmultimediaquotedtechnologyplayvideofiles;(3)fileuploadanddownloadtechnologyrealizesimage,audioandvideofilesclientuploadanddownload;(4)informationsearchflexiblyandconveniently.KeywordsVideoPodcastingSystem;PHP;MySQL;APACHE

目录TOC\o"1-3"\h\u30147摘要 I26321ABSTRACT II25954第1章绪论 191151.1课题背景 287831.2在线影视网站开发前景及相关技术 261871.2.1基于PHP的在线影视网站开发前景 2279331.2.2LAMP及WAMP项目概述 325954第2章基于PHP开发本系统的技术介绍 718422.1PHP介绍 7292062.1.1什么是PHP语言 7278812.1.2PHP语言的特点 8157682.2MySQL及其相关技术介绍 8131132.2.1什么是MySQL 8239962.2.2MySQL的特性 9134862.2.3MySQL的相关技术 95942.3Apache及其相关技术介绍 10246162.3.1什么是Apache 10306712.3.2Apache的相关技术特点 10197312.4本章小结 1110639第3章系统分析与设计 12113753.1系统简述 1249343.2需求分析 1299993.3系统概要设计 1237683.3.1系统目标 12150703.3.2系统功能结构 13267483.3.3文件夹组织结构 15305003.4本章小结 1615256第4章系统实现及测试 17143724.1系统详细设计 17213024.2系统数据库设计 17175534.2.1数据库概念设计 1727524.2.2数据库物理结构设计 189284.3系统模块设计 20102814.3.1前台首页模块设计 20325284.3.2视频(音频)模块设计 237524.3.3上传模块设计 2334814.3.4在线视听模块设计 2427054.3.5后台首页模块设计 25301274.3.6管理员管理模块设计 2660714.3.7音频数据管理模块设计 2626044.3.8用户个人中心模块设计 27248524.4系统测试 27270604.4.1测试过程 2779994.4.2测试结果 29271484.5本章小结 2931302结论 307912致谢 3131619参考文献 32

第1章绪论1.1课题背景目前,在互联网上有很多供网友收听音乐、下载音乐、在线点歌,观看影视、下载视频、的网站。此类网站是随着互联网的发展,近几年刚刚兴起的,它们在网络上已非常受欢迎,不仅丰富了人们的娱乐生活,也为人们提供了非常方便的影音信息资源交流。由于人们对于丰富精神生活的需求日益增加,提供在线影视播放的网站数量也在日益增多,这种类型网站本身的发展前景仍旧很广阔,可谓网络站点中的“朝阳”。在线影视播放网站一般采用目前Internet上较流行的网站构架方式LAMP(Linux+Apache+MySQL+PHP),由于所使用的四种软件都是遵循GPL(通用性公开许可证,GeneralPublicLicense,简称GPL)的开放源码软件,因此使用这种构架方式只需要较低的开发成本就能建立起一个稳定、免费的网站系统。视频播客系统主要采用多媒体引用技术播放影音文件,网站则采用文件上传和下载技术实现图像、音频、视频文件的客户端上传和下载。但这种在线影视播放类型的网站目前还没有针对大众的需求设计开发的。网络上影音资源纷乱繁杂,人们想要找到适合自己并且乐于关注的影音资源往往费时费力。一个为好的视频播客系统的分享、交流影音信息而专门设计的该系统,就能为他们节省很多时间,并提供更多有用的信息。视频播客系统的设计与实现,作为一个迎合大众群体设计的影视播放系统,不仅能满足在线影视网站的需要,也能完全迎合广大电影爱好者对于各种影音信息的需求,具有充分被开发实现的价值。1.2在线影视网站开发前景及相关技术1.2.1基于PHP的在线影视网站开发前景在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。因此网站建设在Internet应用上的地位显而易见,它已成为人们生活中的重要组成部分,从而倍受人们的重视。随着多媒体技术、通信技术以及硬件存储技术的发展,人们已不再满足以往单一、被动的信息获取方式,而是希望主动参与节目之中。在线影视点播这种交互式业务,也越来越引起网民及网站建设者的高度重视。随着Web2.0的升温互联网的发展迎来新一轮的热潮,由于互联网本身的快速发展、不断创新的特点,决定了只有以最快开发速度和最低成本,才能取胜,才能始终保持一个网站的领先性和吸引更多的网民。提供在线影视服务的网站,能够充分迎合人们对于影音信息的需求。而互联网的企业生存和竞争的核心在于技术,技术/研发人才永远是这些企业不可或缺的关键人物,只有拥有资深的人才和领先的技术,才能在最短的时间内创造出优秀的网络应用。PHP技术和相关的人才,正是迎合目前的互联网的发展趋势,PHP作为非常优秀的、简便的Web开发语言,和Linux,Apache,MySQL紧密结合,形成LAMP的开源黄金组合,不仅降低使用成本,还提升了开发速度,满足最新的互动式网络开发的应用。1.2.2LAMP及WAMP项目概述LAMP(Linux+Apache+MySQL+PHP)是基于Linux,Apache,MySQL和PHP的开放资源网络开发平台,世界上最强的开源架构组合,最早出现于1998年,由Linux操作系统、Apache服务器、MySQL数据库和PHP脚本语言组成。LAMP是Linux+Apache+MySQL+PHP四个开源软件的英文第一个子母的缩写。当前很多动态站点或者大型公司的业务平台都是以目前最热门的LAMP框架设计而成的。LAMP是当前最受欢迎的开源软件开发平台,与J2EE平台一样,由于吸引了全世界程序员和系统设计人员的参与,LAMP项目得到了迅速的发展。LAMP随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案。WAMP(Windows+Apache+MySQL+PHP)是基于Windows操作系统下的Apache+MySQL+PHP组合,开发者在Windows操作系统下使用这些Linux环境里的工具称为使用WAMP。由于Windows操作系统的推广,WAMP也是目前较为广泛使用的WEB应用程序平台。目前已经有WAMP的集成包出现,无需开发者繁琐的配置PHP及MySQL软件,只需一个集成包就可以轻松完成Windows环境下PHP和MySQL的环境配置。由于WAMP集成包的出现,目前也有越来越多的使用PHP建设网站的初学者使用并推广WAMP。C/S架构的优势与劣势:(1)应用服务器运行数据负荷较轻。最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。二者可分别称为前台程序与后台程序。运行数据库服务器程序的机器,也称为应用服务器。一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。(2)数据的储存管理功能较为透明。在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。(3)C/S架构的劣势是高昂的维护成本且投资大。首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。其次,传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,代价高和低效率已经不适应工作需要。在JAVA这样的跨平台语言出现之后,B/S架构更是猛烈冲击C/S,并对其形成威胁和挑战。B/S架构的优势与劣势:(1)维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越瘦。而服务器越来越胖是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的。因此,维护和升级革命的方式是瘦客户机,胖服务器。(2)成本降低,选择更多。大家都知道Windows在桌面电脑上几乎一统天下,浏览器成为了标准配置但在服务器操作系统上Windows并不是处于绝对的统治地位。现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用Windows作为桌面操作系统电脑不受影响,这就使的最流行免费Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。比如说很多人每天上新浪网,只要安装了浏览器就可以了,并不需要了解新浪的服务器用的是什么操作系统,而事实上大部分网站确实没有使用Windows操作系统,但用户的电脑本身安装的大部分是Windows操作系统。(3)应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器端完全通过WWW浏览器实现,极少部分事务逻辑在前端实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。B/S与C/S的区别表现在下述八个方面:(1)硬件环境不同:C/S一般建立在专用的、小范围的网络环境上,局域网之间再通过专门服务器提供连接和数据交换服务;而B/S建立在广域网之上,不必是专门的网络硬件环境,例如电话上网,租用设备等。信息自己管理,有比C/S更强的适应范围,一般只要有操作系统和浏览器就行。(2)对安全要求不同:C/S一般面向相对固定的用户群,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S结构较适宜。可以通过B/S发布部分公开信息;而B/S建立在广域网之上,对安全的控制能力相对弱,可能面向的是不可知用户。(3)对程序架构不同:C/S程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑;而B/S对安全以及访问速度的多重考虑,建立在需要更加优化的基础之上。它比C/S有更高的要求,B/S结构的程序架构是发展的趋势,从MS的.Net系列的BizTalk2000Exchange2000等,全面支持网络的构件搭建的系统。SUN和IBM推的JavaBean构件技术等,都使B/S更加成熟。(4)软件重用不同:C/S程序不可避免的需要整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好;而B/S的多重结构,要求构件相对独立的功能,能够较好的重用。(5)系统维护不同:C/S程序由于整体性,必须整体考察,处理出现的问题以及系统升级较难,很有可能就是再做一个全新的系统;而B/S构件组成,方便构件个别更换,能实现系统的无缝升级,同时系统维护开销减到最小,用户只需从网上自己下载安装就可以实现升级。(6)处理问题不同:C/S程序可以处理用户面固定,并且在相同区域,安全要求较高,并与操作系统相关,应该都是相同的系统;而B/S建立在广域网上,面向不同的用户群,分散地域,这是C/S无法做到的,与操作系统平台关系最小。(7)用户接口不同:C/S多是建立的Window平台上,表现方法有限,对程序员普遍要求较高;而B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,减低了开发成本。(7)用户接口不同:C/S多是建立的Window平台上,表现方法有限,对程序员普遍要求较高;而B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,减低了开发成本。(8)信息流不同:C/S程序一般是典型的中央集权的机械式处理,交互性相对低;而B/S信息流向可变化,B-B、B-C、B-G等信息、流向的变化,更像是交易中心。针对本系统的开发,经过对比,本视频播客系统采用B/S模式。对客户端没有特别的要求,只要有一个IE浏览器即可;对所有用户而言,完全不受时空的限制,只要能够上网,都可以进入本在线影视网站,做自己权限内的事情。第2章基于PHP开发本系统的技术介绍2.1PHP介绍2.1.1什么是PHP语言PHP(hypertextpreprocessor,超文本预处理器)是一种服务器端的,嵌入HTML的脚本语言,是一种功能强大,并且简便易用的脚本语言。PHP最初是1994年RasmusLerdorf创建的,刚刚开始只是一个简单的用Perl语言编写的程序,用来统计他自己网站的访问者,最初是作为一个快速、实用的工具包出现。后来又用C语言重新编写,包括可以访问数据库。在1995年以PersonalHomePageTools(PHPTools)开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档,并且发布了PHP1.0。在这早期的版本中,提供了访客留言本、访客计数器等简单的功能。以后越来越多的网站使用了PHP,并且强烈要求增加一些特性,比如循环语句和数组变量等等,在新的成员加入开发行列之后,在1995年中,PHP2.0发布了。第二版定名为PHP/FI(FormInterpreter)。PHP/FI加入了对MySQL的支持,从此建立了PHP在动态网页开发上的地位。到了1996年底,有15000个网站使用PHP/FI;时间到了1997年中,使用PHP/FI的网站数字超过五万个。而在1997年中,开始了第三版的开发计划,开发小组加入了ZeevSuraski及AndiGutmans,而第三版就定名为PHP3。2000年,PHP4.0又问世了,其中增加了许多新的特性。2004年7月,PHP5正式版本的发布,标志着一个全新的PHP时代的到来。它的核心是第二代Zend引擎,并引入了对全新的PECL模块的支持。PHP5的最大特点是引入了面向对象的全部机制,并且保留了向下的兼容性。程序员不必再编写缺乏功能性的类,并且能够以多种方法实现类的保护。另外,在对象的集成等方面也不再存在问题。使用PHP5引进了类型提示和异常处理机制,能更有效的处理和避免错误的发生。在不断更新的同时,PHP5依然保留对旧有的PHP4程序的支持,可以运行于PHP5的平台上而不会出现较大问题。随着MySQL数据库的发展,PHP5还绑定了新的MySQLi扩展模块,它提供了一些更加有效的方法和实用工具用于处理数据库操作。这些方法大都以面向对象的方式实现,同时也极大地提高了基于数据库的Web项目的执行速度。另外,PHP5中还改进了创建动态图片的功能,目前能够支持多种图片格式(如PNG、GIF、TTIF、JPGE等)。PHP5以及内置了对GD2库的支持,因此安装GD2库(主要指UNIX系统中)也不再是件难事,这使得处理图像十分简单和高效。大多数Web程序开发者依然将XML作为一个彻底的简单数据库使用。PHP5中也采用了一系列简单易用、功能强大的方法处理XML文档。2.1.2PHP语言的特点PHP(hypertextpreprocessor,超文本预处理器),是一种HTML内嵌式的语言,PHP与微软的ASP有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格类似于C语言,现在被很多的网站编程人员广泛的运用。PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。它可以比CGI或者Perl更快速的执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;与同样是嵌入HTML文档的脚本语言JavaScript相比,PHP在服务器端执行,充分利用了服务器的性能;PHP执行引擎还会将用户经常访问的PHP程序驻留在内存中,其他用户再一次访问这个程序时就不需要重新编译程序了,只要直接执行内存中的代码就可以了,这也是PHP高效率的体现之一。PHP具有非常强大的功能,所有的CGI或者JavaScript的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。PHP是一种易于学习和使用的服务器端脚本语言,具有良好的跨平台兼容性,在多数Unix平台、OUN/Linux和微软Windows平台上均可运行。PHP具有数据库连接方便、可扩展性、可伸缩性、面向对象编程等优点。本网站前台Web页面和后台发布系统都是用PHP开发设计,通过面向对象的设计方法将系统程序代码封装PHP应用服务的底层,使整个系统具有较好的可扩展性、易用性和兼容性,提高系统的健壮性和安全性。即PHP的特性可以概括为:(1)开放的源代码;(2)PHP是免费的;(3)PHP十分便捷,学习简单;(4)基于服务器端,PHP是运行在服务器端的脚本,可以运行在UNIX、LINUX、WINDOWS下;(5)PHP可嵌入HTML;(6)语言简单,PHP坚持脚本语言为主,与Java和C++不同;(7)效率高,PHP只消耗相当少的系统资源;(8)图像处理,可用PHP动态创建图像;(9)面向对像,在PHP4和PHP5中,面向对象方面都有了很大的改进,现在PHP完全可以用来开发大型商业程序。PHP相对于其他语言,编辑简单,实用性强,更适合初学者。2.2MySQL及其相关技术介绍2.2.1什么是MySQLMySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。2.2.2MySQL的特性使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。支持AIX、BSDi、FreeBSD、HP-UX、Linux、MacOS、NovellNetWare、NetBSD、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统。为多种编程语言提供了API。这些编程语言包括C、C++、C#、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。支持多线程,充分利用CPU资源,支持多用户。优化的SQL查询演算法,有效地提高查询速度。既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。提供多语言支持,常见的编码如中文的GB2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名。提供TCP/IP、ODBC和JDBC等多种数据库连接途径。提供用于管理、检查、优化数据库操作的管理工具。可以处理拥有上千万条记录的大型数据库。2.2.3MySQL的相关技术与其他的大型数据库例如Oracle、DB2、SQLServer等相比,MySQL自有它的不足之处,如规模小、功能有限(MySQLCluster的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。目前Internet上流行的网站构架方式是LAMP(Linux+Apache+MySQL+PHP),即使用Linux作为操作系统,Apache作为Web服务器,MySQL作为数据库,PHP(部分网站也使用Perl或Python)作为服务器端脚本解释器。由于这四个软体都是遵循GPL的开放源码软件,因此使用这种方式不用花一分钱就可以建立起一个稳定、免费的网站系统。MySQL加PHP的配对在网际网路上的应用相比LAMP来说更为常见,并获得了“动态配对”(DynamicDuo)的雅号,大部分播客网站基于的WordPress系统主要运用MySQL加PHP的配对。除了LAMP之外,用于Solaris、Windows和Mac上的网站构架也分别被称为SAMP、WAMP和MAMP。MySQL具有以下几种连接方式:(1)应用程序可透过ODBC或ADO方式,经由使用MyODBC与MySQL资料库连接。(2)MS.NetFramework下的程序(例如:C#、VB.NET)可透过ADO.NET的方式,经由使用MySQL.Net与MySQL资料库连接。(3)C/C++可使用mysql++或是直接使用MySQL内建的API与MySQL资料库连接。(4)PHP可透过PHP的mysqli模块与MySQL资料库连接,具备比mysql模块更好的功能。另外PHP6可使用mysqlnd与MySQL资料库连接。(6)JAVA程序可透过JDBC方式MySQL进行连线,MySQL官方提供了JDBC驱动程序。2.3Apache及其相关技术介绍2.3.1什么是ApacheApacheHTTPServer(简称Apache)是Apache软体基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“apatchyserver”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。本来它只用于小型或试验Internet网络,后来逐步扩充到各种Unix系统中,尤其对Linux的支持相当完美。Apache有多种产品,可以支持SSL技术,支持多个虚拟主机。Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个ApacheWeb站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,市场占有率达60%左右。世界上很多著名的网站如A、Yahoo!、W3Consortium、FinancialTimes等都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、Windows、Linux系统平台上)以及它的可移植性等方面。Apache的诞生极富有戏剧性。Apache起初由伊利诺伊大学香檳分校的国家超级电脑应用中心(NCSA)开发。当NCSAWWW服务器项目停顿后,那些使用NCSAWWW服务器的人们开始交换他们用于该服务器的补丁程序,他们也很快认识到成立管理这些补丁程序的论坛是必要的。就这样,诞生了ApacheGroup,后来这个团体在NCSA的基础上创建了Apache。2.3.2Apache的相关技术特点与微软的IISWeb服务器相比,Apache是一个开源的WEB站点服务器,具有更强的扩展性和安全性。两者都是目前比较流行的Web服务器。下面列出了Apache服务器的一些特点:(1)IIS服务器仅仅支持ASP语言,而Apache服务器支持多种脚本语言,如PHP、JSP和ASP;(2)IIS服务器是微软公司开发的,仅仅在WIndows的操作系统使用,部署在IIS服务器中的项目的可移植性较差,而Apache是一个开源的服务器,既可以在Windows系统下使用,也可以在Linux或者Unix这样的操作系统下使用,安装在Apache的软件项目,可以不做任何修改的在windows和unix系统下面进行移植;(3)Apache作为一个开源的服务器,就象开源的LINUX操作系统一样,具有较高的安全性。(4)支持UNIX线程,在支持POSIX线程的UNIX系统上,现在Apache能在混合的多线程、多线程模式下运行,使很多配置的可伸缩性得到了改善。(5)Apache重写了编译系统,使用autoconf和libtool等模块,使得Apache的配置系统与其他软件包更加相似,大大提高了Apache的可配置性。(6)Apache现在由于拥有能够支持多协议的底层构造,因此在多协议支持方面提高了可用性,比如http协议和https协议等。(7)Apache除了支持UNIX平台外,现在在OS/2、Windows等平台上有了更好的速度和稳定性。另外,随着在Apache服务器中引入多路处理模块(MPM)和可移植运行时模块(APR),Apache在这些平台上的指令有它们本地的API指令实现,提高了性能的同时减少由于使用POSIX模拟层产生bug出现的次数。2.4本章小结本章主要介绍了基于PHP开发本系统设计与实现所使用到的PHP编程语言,MySQL数据库及ApacheHTTPServerWEB服务器。首先介绍了什么是PHP语言及其起源、发展历史,还有PHP语言的特点和PHP目前在国内外应用的情况及其对网站建设发展的影响。然后介绍了MySQL的相关技术和Apache相关的内容,包括ApacheHTTPServer的概念及其发展历程,Apache是目前运用最广的WEB服务器软件,可运行在几乎所有平台上。最后介绍了PHP、ASP和JSP三种程序语言的异同点,以及较深刻的分析了这三种语言在技术层面上的不同特点第3章系统分析与设计3.1系统简述网络传播以其特有的快速、高效、便捷的传输方式直接被人们所接受。随着多媒体数据的存储、传输和应用技术的不断成熟,以及宽带网络的不断发展,我们有理由相信宽带点播一定会成为网络内容创新的重头戏。视频播客系统主要提供在线视听、影视音乐资源交流分享等功能。同时,该系统提供会员注册,用户可以注册并登录管理自己的个人信息,可以搜索视听影音信息,会员登录以后可以上传或下载影音资源,并且可以在线点歌试听等功能。系统设一个管理员账号,可对会员登录、影视音乐目录、数据信息和登录日志等进行管理。管理员可以对数据库与会员的权限进行修改和限制。支持对系统数据库的数据增加新的数据、删除无用或过时的数据、修改错误的数据和查询已存在的数据。系统主要功能页面有:影视专区页面,音乐专区页面,最新上传影音资源页面,查询页面,用户注册页面,用户登录页面,管理员登录页面,会员个人信息管理页面,管理员管理页面等。3.2需求分析经过各项需求分析,本系统所要实现的功能如下:网站提供下载功能和在线视听等功能。网站分前台和后台两部分,没有权限,用户无法进入后台对影音信息及其目录进行管理。独特的用户个人中心模块,为网站的会员提供个人中心展示。会员需要登录后才可进入个人中心操作,查看自己上传的音频和视频,修改个人密码,查看订阅的视频与音频。以及推出到或是回到,网站首页。前期数据量比较少,可以使用小型数据库以节约成本,如果后期数据量增大,则可以更换大型数据库。网站实行游客,会员等级管理,分为“游客”和“会员”两种。主要根据主要根据注册来进行设置。3.3系统概要设计3.3.1系统目标本系统主要通过各类技术实现以下目标:采用无边框窗口技术,保障系统安全性;信息搜索灵活方便;采用多媒体引用技术播放影音文件;网站采用文件上传和下载技术实现音频、视频文件的客户端上传和下载;网站界面和谐友好,能符号大学生的审美标准。本视频播客系统前台在线试听流程图如下图:图3-1系统前台在线试听显示流程图3.3.2系统功能结构根据本系统的特点,可以将其分为前台和后台两个部分设计,前台主要实现在线视听、影视音乐上传、影视音乐下载、在线试听等功能;后台主要用于管理员对会员数据,管理员数据管理、数据信息和登录日志进行管理。后台功能结构如下图:视频播客系统视频播客系统日志管理数据管理管理员管理会员管理日志删除日志浏览视频数据管理音频数据管理管理员添加管理员查看管理员删除会员删除会员查看前台功能结构如下图:图3-2前台功能结构图视频播客系统前台视频播客系统前台登录展示上传专区在线视听最新排行音视频专区下载订阅其他模块信息查询会员专区登录展示信息在线试听音频查看视频数据上传音频数据上传音频下载订阅视频下载订阅联系我们影院前门视频下载排行音频下载排行按音频查询按视频查询进入个人中心会员资料修改会员注册会员登录本视频播客系统流程图如下图:图3-3系统流程图数据库更新数据库更新数据库在线视听信息下载信息上传信息订阅会员管理信息管理日志查看后台登录管理员会员登录数据库检索信息查询信息查看用户3.3.3文件夹组织结构本视频播客系统包括前台和后台两个部分,本网站的文件夹组织结构图如下图:图3-4文件夹组织结构图图3-5php目录中的文件组织结构图3.4本章小结本章主要介绍了该视频播客系统的系统概念设计流程。首先对系统将要实现的功能进行了分析,并具体给出了需求分析所要实现的功能及系统完成后要达成的目标。本章节给出了系统前、后台的功能结构图以系统流程图,以及系统的文件夹组织结构,通过本章节读者可以知道本系统大概的设计思路及实现流程。第4章系统实现及测试4.1系统详细设计本视频播客系统由多个功能模块组成,前台页面包括:在线视听页面,上传页面,下载页面,影音信息查看页面,信息查询页面,会员操作页面,站长登录页面等;后台页面包括:登录日志管理页面,管理员对数据的管理页面,管理员对会员的管理页面以及目录管理页面。其中,前台主要实现在线视听、影视音乐上传、影视音乐下载、个人中心显示等功能;后台主要用于管理员对影视音乐目录、数据信息和登录日志进行管理。本系统主要提供在线视听、影视音乐资源交流分享等功能,同时,提供会员注册,用户可以注册并登录管理自己的个人信息,可以搜索视听影音信息,会员登录以后可以上传或下载影音资源等功能。系统设一个管理员账号,可对会员登录、影视音乐目录、数据信息和登录日志等进行管理。4.2系统数据库设计4.2.1数据库概念设计通过需求分析和功能上的设计,本系统规划出管理员信息实体、会员信息实体、视频信息实体、音频信息实体、登录日志信息实体。其中,介绍几个实体及其属性:(1)会员信息实体包括注册用户的详细个人信息,如用户名、密码、昵称等;图4-1会员信息实体E-R图年龄年龄会员编号出生年月昵称电话会员邮箱密码……(2)视频文件实体包括视频名称、视频图片、视频文件路径、主要演员、导演、发行商等多项资料;图4-2视频信息实体E-R图视频文件视频文件视频名称主要演员视频图片导演文件路径视频类型发行时间……4.2.2数据库物理结构设计本系统的数据库中共包含6个数据表:(1)会员信息列表,主要存储用户的个人信息;(2)视频信息列表,主要存储上传视频的资料;(3)音频信息列表,主要存储上传音频的资料;(4)管理员列表,主要用于后台管理员的资料信息管理,包括管理员名称、管理员权限等;(5)登陆日志列表,主要存储用户及管理员的登录情况;(6)订阅视频音频信息列表,主要用于记录用户所订阅的视频,音频信息。数据库包含的6个数据表如下图:图4-3数据库列表图会员信息列表部分信息结构如下表:表4-4部分会员信息列表字段类型NULL说明idInt4)否会员编号user_nameVarchar(20)否会员昵称user_passwordVarchar(50)否会员密码user_sexint(4)否性别user_addressVarchar(30)否地址user_emailvarchar(30)否邮箱user_telVarchar(11)否电话管理员列表结构如下表:表4-5管理员列表字段类型NULL说明idInt(4)否管理员编号admin_nameVarchar(20)否管理员昵称admin_passwordVarchar(50)否管理员密码realnameVarchar(20)否真实姓名鉴于音频信息列表及音频目录列表与视频信息列表及视频目录列表类似,下面只给出视频信息列表及视频目录列表的结构图。视频信息列表部分信息如下表:表4-6部分视频信息列表字段类型NULL说明idInt(4)否视频信息编号nameVarchar(20)否视频名称actorVarchar(30)否主要演员directorVarchar(30)否导演languageVarchar(30)否语言publishtimedate否发行时间addressVarchar(30)否存储地址typeVarchar(30)否类型userVarchar(20)否发布人昵称downtimeInt(4)否下载次数sizesVarchar(20)否视频大小节目订阅列表结构如下表:表4-7节目订阅列表字段类型NULL说明idInt(4)否订阅节目编号Program_idint(4)否订阅idProgram_nameVarchar(30)否节目名称User_nameVarchar(30)否用户typesVarchar(10)否类型4.3系统模块设计4.3.1前台首页模块设计系统前台首页的功能模块主要包括:(1)网站首部导航栏:主要有影视专区、音乐专区、上传专区和试听专区,上传专区。(2)网站左侧导航栏:搜索模块和影视排行模块;登录后显示用户中心链接,可进入用户中心。(3)网站主显示区:包括最新上传模块、视频模块和音频模块。前台首页如图:表4-8前台首页在前台首页实现代码中,使用到了3个include语句,将导航栏、搜索框、浏览区等主要的模块加载进来。通过url的type参数传递,include不同的模块。前台首页实现代码如下:<htmlxmlns="/1999/xhtml"><?phpif(!isset($_SESSION)){session_start();}?><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><title>movie_online</title><linkhref="../css/layout.css"rel="stylesheet"type="text/css"/><metaname="Keywords"content="movie_online影视"/><metaname=""content="movie_online影视"/><metaname="author"content="songyun"/><metaname="Description"content="movie_online影视"/><scripttype="text/javascript"src="../js/index.js"></script></head><body><divid="container"><divid="header"><?phpinclude'admin_frame_top.php';?></div><divid="mainContent"><divid="sidebar"><?phpinclude'admin_frame_left.php';?></div><divid="content"><?php error_reporting(0); if(isset($_GET['type'])) { //echo$_GET['type']; switch($_GET['type']) { casemovie: include'movie.php'; break; casecommunicateus: include'communicateus.php'; break;//等等其他的模块 default: include'main.php'; break;}} else { include'main.php'; } ?></div> </div><divid="footer"><palign="center"style="margin-top:2px"> <spanclass="STYLE1">CopyRight@2000-2011www.movie_movie_online影视系统</span><br/> </p></div></div></body></html>4.3.2视频(音频)模块设计查看网站所有的视频音频信息,每页固定显示一定数量,分页显示,游客只可以进行查看,会员则可以进行下载,订阅,下载后自动进行统计+1,订阅后可进入个人中心进行查看,或者删除订阅。如下图:图4-9音频(视频)4.3.3上传模块设计单击“上传模块专区”,进入到上传专区页面,页面中有音频上传和视频上传下拉框选择。点击提交,通过不同的value值,触发不同的function函数,调用不同的上传信息页面。音频视频上传实现主要代码如下:<?phpheader("Content-Type:text/html;charset=utf-8"); session_start(); include"../conn/conn.php"; include"../inc/chec.php"; $f_type=array("avi","rm","rmvb","wav","mp3","mp4"); $audio_path="upload\\movie"; $video_path="upload\\music"; $file_path="";//获取文件类型$postf=strtolower(strchr($_FILES[address][name],".")); //搜索.在文件地址中第一次出现的位置//然后返回.以及文件名因此为.文件名 $time=time();$file_path=date('Y-m-d-h-i-s-a',$time).$postf; //将缓存文件移动到指定目录 if($_SESSION['types']=='Audio')//判断是视频还是音频信息 {$var=move_uploaded_file($_FILES[address][tmp_name],$audio_path."\\".$file_path);4.3.4在线视听模块设计在线视听模块设计,游客和会员都可以对网站中展示的音频信息,进行试听,通过点击链接,url传递参数到试听页面,通过参数,从数据库中提取出音频的路径,进行音频播放。视频播放页面主要是根据传递的参数进行数据库检索,并将对应数据的硬盘存储地址作为多媒体文件的引用地址,当页面加载完毕后,进行音频播放。在线视听代码如下:<divstyle="width:680px;height:540px;border:2pxsolid#999999;overflow:scroll;background:url(../images/1112H9A24-10.gif)"> <center><br/><p><?phpecho$_GET[name];?></p> <embedstyle="margin-top:100px"src="upload/music/<?phpecho$address;?>"autostart="true"ShowStatusBar=true></embed> </center></div>4.3.5后台首页模块设计系统后台首页有网站左侧导航栏及网站主显示区。其中,网站左侧导航栏包括几个管理模块及分类:(1)视频数据管理模块,主要视频数据信息部分;(2)音频数据管理模块,音频数据管理部分;(3)会员管理模块,包括会员信息查看、会员信息删除等;(4)登陆日志信息管理模块,主要用于浏览用户及管理员登录情况;(5)管理员设置模块,主要包括管理员信息添加、删除部分。网站主显示区则是用来显示各个模块的操作及结果。后台首页:如图图4-10系统图在本系统的后台首页采用的布局结构为iframe框架布局与前台不同。左侧导航栏清楚、明白地显示了后台管理员所能使用到的功能。当单击任意功能按钮时,在主显示区显示对应的操作界面,和该功能模块下的子功能。页面简练、结构清晰、浏览方便4.3.6管理员管理模块设计对管理员信息查看,修改,删除,添加等操作。管理员可以填写表单并将表单提交到处理页面进行数据处理,以完成管理员信息添加的操作。管理员信息添加的数据处理主要是根据提交的表单数据,在数据库中添加对应的记录,首先判断输入姓名是否存在,如果存在,显示提示语,并返回上一步;如果不存在这种错误,生成insert语句,添加新管理员。管理员信息删除主要是根据传递的管理员的id,将数据库中对应的数据删除。4.3.7音频数据管理模块设计音频数据管理部分。管理员可以对上传的音频信息进行查看,并对一些不可以进行观看的视频音频数据进行删除或是修改,音频视频数据管理实现的方法基本类似。视频数据删除主要是根据传递的文件id值,将数据库中的记录删除,同时,使用unlink函数删除服务器端的真实数据。效果如图:图4-11系统图,4.3.8用户个人中心模块设计为了迎合现在网络的流行趋势,设计出每个用户的个人中心主页,类似于博客,每个用户都拥有自己的个人中心。在网站首页登录后,点击进入个人中心,进入。同过include调用实现个层次关系,通过type传递参数,来调用不同的模块,用户上传的音频视频,都可以看到,以及订阅信息,以及用户个人信息等等。个人中心首页如下:图4-12系统图通过首页可以看出,个人中心,显得很亲切,很温暖。4.4系统测试在开发网站系统的过程中,需要面对错综复杂的问题,因此,在软件生存周期的每个阶段都不可避免地会产生错误。因此系统完成后,进行系统测试十分必要。4.4.1测试过程进行系统测试过程一般按照四个步骤进行,即单元测试、集成测试、确认测试和系统测试。测试过程中每一个步骤在逻辑上是前一个步骤的继续,这样才能保证测试的完整性和可靠性。系统测试过程如下图:图4-13系统测试过程图单元测试单元测试单元测试集成测试确认测试系统测试……已测试过的模块已集成的模块已确认的模块已交付的系统被测模块被测模块软件需求设计信息系统其他元素其中,单元测试是针对系统中最小的可编译单元进行正确性检验,目的在于发现各模块可能存在的各种差错,保证每个模块能正确运行;集成测试是将所有模块按照设计要求组装成为系统,按集成方案设计测试用例进行测试;确认测试的任务是验证软件的有效性,即验证软件的功能和性能及其他特性是否与用户的要求一致;系统测试是将通过确认测试的系统作为整个基于计算机系统的一个元素,与计算机硬件、外设、数据和人员等其他系统元素结合在一起,在实际运行(使用)环境下,对计算机系统进行一系列的组装测试和确认测试,目的在于通过与系统的需求定义做比较,发现软件与系统定义不符合或与之矛盾的地方。将测试得出的实际结果和预期的结果进行比较,如果两者不一致测说明程序中存在错误,但测试无法说明错误的性质和准确位置。设法确定错误的准确位置并且改正它,这就是系统排的任务。排错过程是测试过程的一部分。为了纠正一个程序中的错误,可以需要花费一小时、一天甚至一个月的时间。正是由于排错所固有的不确定性,常常使得测试不能按计划进行。随着测试结果的积累和统计分析,软件可靠性的评价就可以按指定的模型计算。所谓系统可靠性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论