目录目录1.网站简介………………………………………………………………12.网站开发平台和工具…………………………………………………13.网站结构设计…………………………………………………………14.网站功能模块…………………………………………………………35.数据库结构……………………………………………………………66.主要模块实现与代码摘要…………………………………………………77.课程设计总结……………………………………………………………………1011网站简介目前,网络的发展日新月异,尤其是许多的校园网、小区宽带、企业或其他单位内部网的建设已经可以满足人们对于带宽的要求。于是在线视频点播技术越来越多地出现在人们的生活中。本文中的在线视频点播网站,属于在线看视频类网站。管理员可通过该系统为网友提供电影下载和其他在线视频服务;普通游客可以在线看视频,会员可以通过该系统在线看视频和下载视频。2开发平台和工具操作系统WindowsXPProfessional前台开发Dreamweaver8、ASP后台数据库SQLServer20003网站结构设计网站实现功能如下:1.会员管理(1)会员注册(2)会员管理2.视频信息显示(1)显示全部视频信息(2)按类别显示视频信息(3)显示视频详细信息3.视频信息搜索(1)按关键字搜索4.视频栏目管理(1)一级栏目添加(2)一级栏目改名(3)一级栏目删除(4)一级栏目子专题添加(5)一级栏目子专题改名2(6)一级栏目子专题删除5.视频信息管理(1)视频信息添加(2)视频信息修改(3)视频信息删除4网站功能模块本文的在线点播系统共分为5个模块:会员管理模块、视频信息显示模块、视频信息搜索模块、视频栏目管理模块和视频信息管理模块,功能模块划分如下图4.1所示:会员管理模块会员管理模块会员管理模块会员管理模块视频信息显示模块显示全部信息类别显示信息视频详细信息视频信息搜索模块关键字搜索视频信息管理模块视频信息添加视频信息修改视频信息删除栏目管理模块一级栏目添加一级栏目改名一级栏目删除一级栏目子专题添加一级栏目子专题改名一级栏目子专题删除图4.1系统功能模块图35数据库结构根据网站功能设计要求和模块划分,数据库主要用于存储用户信息、视频信息、一级栏目信息、二级栏目信息和管理员信息。数据库结构如下:(1)用户信息:ID、用户名和密码。(2)视频信息:ID、下载类型、信息名称、信息描述、下载路径、二级栏目id、一级栏目id、语言种类、文件大小和浏览次数等。(3)一级栏目信息:Classid、栏目名称。(4)二级栏目信息:Nclassid、栏目名称和一级栏目id。(5)管理员信息:ID、管理员名称、管理员密码和管理员级别。数据库逻辑设计如下:1.管理员信息admin,如下图5.1所示:图5.1管理员信息表2.视频信息download,如下图5.2所示:图5.2视频信息表46主要模块实现与代码摘要6.1视频信息显示模块视频信息显示模块包含以下文件:Index.asp、soft.asp、list.asp、download.asp、playwin.asp6.1.1index.asp1.主页面如下:图6.11主页面2.表单元素主页面只有1个表单元素,如下表6.1所示5表6.1index.asp页面表单元素名称表单元素含义最大长度KeywordText关键字503.涉及数据库表使用了数据库表download4.页面代码摘要!--#includefile=conn.asp--%dimrssetrs=server.createobject(adodb.recordset)%‘Html页面显示…………%'取得累计下载排行前30条记录sql=selecttop30id,showname,bbfromdownloadsql=sql&orderbyhitsdescrs.opensql,conn,1,1'打开记录集对象ifrs.eofandrs.bofthen'没有记录则提示response.write(没有下载)else'显示30条下载记录dowhilenotrs.eof'取下条记录response.write(liAhref=list.asp?id=&rs(id)&&rs(showname)&&rs(bb)&/A/li)rs.movenextloopendifrs.close'关闭记录集%‘Html页面显示%'取得10条精品视频记录sql=selecttop10sql=sql&download.id,download.showname,bb,download.dateandtime,download.images,download.hits,download.classid,download.Nclassid,Nclass.Nclasssql=sql&fromdownload,Nclasswheredownload.stop=1anddownload.Nclassid=Nclass.Nclassidsql=sql&orderbydownload.dateandtimedescrs.opensql,conn,1,1'打开记录集对象ifrs.eofandrs.bofthen'如果没有记录则提示%trtd还没有任何资料/td/tr6%else%'显示10条精品信息%dowhilenotrs.eof%trtdwidth=100%divalign=centerahref=list.asp?id=%=rs(id)%%ifnotisnull(rs(images))andrs(images)then'有图片则显示图片response.writeimgsrc=+rs(images)+border=0width=120height=80endif%/a/div/td/trtrtdwidth=100%onMouseOver=this.bgColor='#F8F8F8';onMouseOut=this.bgColor='#ffffff';height=5divalign=centerahref=list.asp?id=%=rs(id)%%=rs(showname)%%=rs(bb)%/a/div/td/trtrtdwidth=100%height=10 /td%rs.movenext'取下一条精品视频信息loopendifrs.close%'另外还有几个部分代码为:'显示10条视频信息'显示8条推荐视频信息'由于操作类似,故此省略6.1.2soft.asp1.页面如下图,为视频类别页面效果图:7图6.12类别视频信息显示2.表单元素表6.2soft.asp表单元素名称元素类型含义最大长度KeywordText关键字503.涉及数据库表涉及数据库中download表4.代码摘要!--#includefile=conn.asp--!--#includefile=inc/const.asp--%dimtotalPut'记录总量变量dimCurrentPage'页面变量dimTotalPages'总页码变量dimi,j'dimkeyworddimsqldimrsdimupdowndimorder_nameorder_name=Request(Order)'分页代码,默认为第一页ifnotisempty(request(page))thencurrentPage=cint(request(page))elsecurrentPage=1endif'排序方式默认为正序8ifrequest(updown)thenupdown=descelseupdown=endif'根据要求,按关键字类别排序selectcaseorder_namecaseshownameorder_name=shownamecasehotorder_name=hotcasedateandtimeorder_name=dateandtimecasehitsorder_name=hitscaseordersorder_name=orderscasesizeorder_name=sizecaseelseorder_name=dateandtimeupdown=descendselect'创建记录集对象setrs=server.createobject(adodb.recordset)dimclassid,Nclassiddimclassname,Nclassname'如无要求显示的栏目id,则显示全部信息ifrequest(classid)=thenclassid=classid=1and'取得一级栏目信息sql=selectclassfromclasswhereclassid=1rs.opensql,conn,1,1'打开记录集对象ifrs.bofandrs.eofthenresponse.write还没有任何栏目,请到管理页面添加response.endelseclassname=rs(class)endifrs.close'关闭记录集else'有要求显示的栏目id就显示该栏目名字信息classid=classid=&cstr(request(classid))&andsql=selectclassfromclasswhereclassid=&cstr(request(classid))9rs.opensql,conn,1,1classname=rs(class)rs.closeendififrequest(Nclassid)=thenNclassid=Nclassname=所有影片Else'要显示二级栏目id就显示该栏目名字信息Nclassid=Nclassid=&cstr(request(Nclassid))&andsql=selectNclass.Nclass,class.classfromNclass,classwhereNclass.classid=class.classidandNclass.Nclassid=&cstr(request(Nclassid))rs.opensql,conn,1,1classname=rs(class)'栏目名字信息Nclassname=rs(Nclass)rs.closeendif%'其他代码……6.1.3list.asp1.下图为视频信息详细内容页面:图6.13视频信息详细内容显示2.表单元素名称元素类型含义最大长度KeywordText关键字50103.数据库信息表涉及数据库中的记录表download4.代码摘要!--#includefile=conn.asp--%'取得本地服务器名称tmp=http://&request.servervariables(SERVER_NAME)&_left(request.servervariables(SCRIPT_NAME),len(request.servervariables(SCRIPT_NAME))-len(/list.asp))dimsqldimrsdimclassname,classid,Nclassname,Nclassiddimlasthitsdimtitle'视频信息id号为空则退出ifrequest(id)=thenresponse.write您没有选择相关影片,请返回response.endendif'不为空则创建记录集对象setrs=server.createobject(adodb.recordset)'取得视频详细信息sql=selectclass.class,Nclass.Nclass,download.showname,download.bb,download.classid,download.Nclassid,download.lasthitsfromdownload,cl