大家好,今天给大家介绍基于C#+asp.net+Access的视频点播系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。
文章目录:
项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:9766个字33页
包含内容:整套源码+完整毕业论文
提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。
第一章 视频点播概述
1.1 设计思想
设计方法采用模块划分、面向对象的设计思想,主要划分为以下几个模块:视频窗口模块、界面设计模块、实现搜索/点击排行等功能模块、数据库模块、后台管理模块,本人主要完成前三个模块的设计。
开发步骤:
①首先进行需求分析,
②对系统进行整体设计
③对系统进行详细设计
④对软件的功能及编码进行调试
⑤软件维护阶段
功能方面:用户进入主页后可以利用搜索引擎输入电影名字或者演员名进行电影搜索,如果用户想要获得一定的权限必须先进行注册、登录。
能够对自己的信息进行修改(包括,密码、emial等)
在页面的一侧可以浏览电影的最新更新情况和点击排行榜
在点播模块中主要是利用Mediaplay与Realplayer的嵌入实现播放的功能,由于视频文件格式不同要求必须两种播放器都得用,所实现的视频不仅包括对由后台管理系统上传的电影文件进行播放,还包括对一些著名的电视台进行连接实现在线实时收看功能。
后台管理方面包括实现首先实现对数据库的连接,通过asp.net编程实现页面能够读取access数据库的内容(包括电影名称、影视简介、连接海报图片的路径等)并显示在页面一定的位置。除此之外,还要实现通过管理员帐户,可以进在本地或者远程地对影片进行在线上传、删除、填写影片简介。
数据库的建立:首先分为3个数据表,包括管理员信息表(含用户名、密码)、用户信息表(含用户名、密码、email等)、影片信息表(含影片路径、影视简介、海报路径、发表时间)。
根据要实现的功能,制定一系列的方案,设计实现系统的逻辑结构,功能框架,以及数据库结构,用ASP.NET和ACCESS来实现视频窗口与数据库的连接,实现视频数据的传输功能
1.2 系统前景
省略
1.3 asp.net简介
ASP.net 是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.net提供许多比现在的Web开发模式强大的的优势。
执行效率的大幅提高
ASP.net是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。
世界级的工具支持
ASP.net构架是可以用Microsoft(R)公司最新的产品 Visual Studio.net开发环境进行开发,WYSIWYG(What You See Is What You Get所见即为所得)的编辑。这些仅是ASP.net强大化软件支持的一小部分。
强大性和适应性
因为ASP.net是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上(笔者到现在为止只知道它只能用在Windows 2000 Server上)。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.net的Web应用中。ASP.net同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.net。
简单性和易学性
ASP.net是运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。例如ASP.net页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。另外,通用语言简化开发使把代码结合成软件简单的就像装配电脑。
高效可管理性
ASP.net使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为"Zero Local Administration"的哲学观念使Asp.net的基于应用的开发更加具体,和快捷。一个ASP.net的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。
多处理器环境的可靠性
ASP.net已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.net应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP确做不到这一点。
自定义性,和可扩展性
ASP.net设计时考虑了让网站开发人员可以在自己的代码中自己定义"plug-in"的模块。这与原来的包含关系不同,ASP.net可以加入自己定义的如何组件。网站程序的开发从来没有这么简单过。
安全性
基于Windows认证技术和每应用程序配置,你可以确性你的原程序时绝对安全的。(但是Asp的经验告诉我们,不能这么自信,M$老是会出Bug
1.4 ACCESS简介
数据库是有结构的数据集合,它与一般的数据文件不同,(其中的数据是无结构的)是一串文字或数字流。数据库中的数据可以是文字、图象、声音等。Microsoft Access是一种关系式数据库,关系式数据库由一系列表组成,表又由一系列行和列组成,每一行是一个记录,每一列是一个字段,每个字段有一个字段名,字段名在一个表中不能重复。
第二章 视频点播系统介绍与技术介绍
2.1网站结构设计
本站的系统结构如下图所示。
一个典型的在线宽带点播网站应包含软件下载安装、会员管理、视频信息显示播放、视频搜索、视频信息管理和视频文件管理。
2.1.1 目标设计
在线宽带点播网站所要实现的功能如下。
会员管理
会员注册
会员登录验证
会员管理
视频信息显示
显示全部视频信息
按类别显示视频信息
显示视频详细信息
视频信息搜索
按关键字搜索
视频信息管理
管理员登录验证
视频信息添加
视频信息修改
视频信息删除
视频文件海报图上传
2.1.2 系统功能分析设计
在线宽带点播共分5个模块:会员管理模块、视频信息显示模块、视频信息搜索模块、视频信息管理模块和视频文件管理模块,其功能如下图所示。
2.2 数据库结构设计
根据功能设计的要求和模块划分,本站的数据库主要存储用户信息、视频信息、管理员信息、网站公告栏信息。
2.2.1 数据库需求分析
数据项和数据结构如下:
用户信息:ID(自动编号)、用户名和密码。
视频信息:信息名称、连接路径、文件大小、影片类型、影片简介、影片得分等。
管理员信息:ID(自动编号)、管理员名称、管理员密码。
公告栏信息:ID(自动编号)、公告内容、发表日期。
2.2.2 数据库逻辑设计
1. 用户信息表“用户”,如下表:
2.3 会员管理模块
会员管理模块包含一下子块。
会员注册
userreg.aspx
用户登录验证
default.aspx
修改个人信息
reg_pre.aspx
2.3.1 userreg.aspx
1. 页面示例
下图为用户注册会员所看到的页面。
用户注册会员
2. 页面中需要用户填写的表单元素
这个页面中有6个需要用户填写的表单元素 如下表所示:
3. 页面所涉及到的数据库表信息
此页向系统提供用户注册名称和密码,并涉及到对数据库表“用户”表的操作。
4. 页面代码分析
按钮提交触发函数代码:
以下代码实现了对注目录中的access数据库vod.mdb的连接,此代码的主要作用是当用户点击页面中的“注册”按钮时触发的Button_Click事件,实现把各个控件的数据读取并且通过cmd.CommandText = "Insert into 用户 values(?,?,?,?,?,?)"语句把所获取的用户所输入的信息写入到数据库,并且当用户点击“清除”按钮或者刷新页面时把所有的控件清空,实现用户注册功能。
Sub Button_Click(Sender As Object, e As EventArgs)
Dim conn As New OleDbConnection()
Dim cmd As New OleDbCommand
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("vod.mdb")
conn.Open()
cmd.Connection = conn
cmd.CommandText = "Insert into 用户 values(?,?,?,?,?,?)"
cmd.Parameters.Add(New OleDbParameter("@用户名",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@密码",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@性别",OleDbType.Boolean))
cmd.Parameters.Add(New OleDbParameter("@真实姓名",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@电子邮件",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@用户主页",OleDbType.VarChar,20))
cmd.Parameters("@用户名").Value = Request("nicheng")
cmd.Parameters("@密码").Value = Request("fpass")
If Sex1.Checked Then
cmd.Parameters("@性别").Value = True
Else
cmd.Parameters("@性别").Value = False
End If
cmd.Parameters("@真实姓名").Value = Request("realname")
cmd.Parameters("@电子邮件").Value = Request("dianyou")
cmd.Parameters("@用户主页").Value = Request("zhuye")
cmd.ExecuteNonQuery() '执行sql语句
conn.Close() '关闭数据库
Response.Write("OK")
nicheng.text=""
fpass.text=""
secpass.text=""
realname.text=""
dianyou.text=""
zhuye.text=""
End Sub
</script>
用户输入验证代码:
以下代码实现对用户所输入的注册信息进行验证,验证其输入是否为空或者是否合法。
<asp:RequiredFieldValidator id="RequiredFieldValidator1" ControlToValidate="nicheng" InitialValue="" ErrorMessage="请输入你的昵称" Display="None" runat="server"/>
<asp:RequiredFieldValidator id="RequiredFieldValidator3" ControlToValidate="fpass" InitialValue="" ErrorMessage="请输入你的密码" Display="None" runat="server"/>
<asp:comparevalidator id="c1" runat="server" controltovalidate="secpass" controltocompare="fpass" operator="equal" ErrorMessage="两次的密码不一致" Display="None" Type="String"/>
<asp:RequiredFieldValidator id="RequiredFieldValidator4" ControlToValidate="secpass" InitialValue="" ErrorMessage="请再输入你的密码" Display="None" runat="server"/>
<asp:RequiredFieldValidator id="RequiredFieldValidator5" ControlToValidate="dianyou" InitialValue="" ErrorMessage="请输入你的邮箱地址" Display="None" runat="server"/>
<asp:ValidationSummary ShowSummary="false" ShowMessageBox="true" ID="valSum" DisplayMode="BulletList" runat="server" HeaderText="请按照下列提示"/>
2.3.2 用户登录
1. 页面示例
用户登录系统,页面效果如下所示:
2. 页面中需要用户填写的表单元素
该表单共有两个表单元素 如下表所示:
3. 页面所涉及到的数据库表信息
该登录表单仅完成向系统提交会员登录信息,没有使用到系统中的数据库表信息。
4. 页面代码:
以下代码实现对用户对表单填写信息的验证,若登录成功,把当前用户所输入的用户名信息赋值到变量flag中,以便把其值传到其他页面,若登录失败会在页面中显示登录失败信息Response.write(“登陆失败!”)
Sub Login(sender As Object, e As CommandEventArgs)
Dim conn As New OleDbConnection()
Dim cmd As New OleDbCommand()
Dim objReader As OleDbDataReader
Dim i As integer
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("vod.mdb")
conn.Open()
cmd.Connection = conn
cmd.CommandText = "Select 用户名,密码 From 用户"
objReader = cmd.ExecuteReader()
Do While objReader.Read()
If Request.Form("UserName") = objReader.Item("用户名") And Request.Form("pass") = objReader.Item("密码") Then
Response.write("登陆成功!")
session("flag")=UserName.text
Response.Redirect("default.aspx") '成功登录
Exit Do
End If
Loop
Response.write("登陆失败!")
ObjReader.Close() '关闭DataReader对象
conn.Close() '关闭数据连接
'提交用户名和密码
response.write("")
End Sub
2.4 视频信息显示模块
视频信息显示模块包含以下页面。
default.aspx
dongzuo.aspx
list.aspx
playrm.aspx
playwin.aspx
各页面之间的关系如下图所示
2.4.1 网站主页default.aspx
1. 页面示例
下图为全部信息显示所看到的效果。
全部信息显示
2. 页面所涉及的数据库表的信息
此页用了系统中的信息记录表download。
3. 页面代码:
Sub BindGrid()函数实现了DataGrid 控件TotalShow ,stuDG1、 stuDG2、 stuDG3与指定数据源的绑定,并且三个控件均绑定同一个数据库表“download”不同的是TotalShow显示的视频信息是按照“整理日期”的降序排列,stuDG1显示的视频信息是按照影片星级多少来排序的,并且在所有的datagrid控件的视频显示都实现了分页显示。
Sub BindList()函数实现了DateList控件stuDL与数据库表“download”的绑定,使得视频信息按照“评分”大小来排序。
Sub BindGrid() 'BindGrid()指定数据源,并绑定到DataGrid控件
Dim conn As New OleDbConnection()
Dim cmd As New OleDbCommand()
Dim DS As New DataSet()
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("vod.mdb")
conn.Open()
cmd.Connection = conn
cmd.CommandText = "Select * from download order by 整理日期 desc" '"Select 影片名,整理日期 from download"
Dim objAdpt As New OleDbDataAdapter(cmd)
objAdpt.Fill(DS,"download")
TotalShow.DataSource = DS.Tables("download").DefaultView '指定stuDG控件的数据源
TotalShow.DataBind()
stuDG1.DataSource = DS.Tables("download").DefaultView '指定stuDG控件的数据源
stuDG1.DataBind()
stuDG2.DataSource = DS.Tables("download").DefaultView '指定stuDG控件的数据源
stuDG2.DataBind()
Dim cmd1 As New OleDbCommand()
cmd1.Connection = conn '将数据源与stuDG控件绑定
cmd1.CommandText = "Select * from download where classid='11'"
Dim objAdpt1 As New OleDbDataAdapter(cmd1)
'objAdpt1.Fill(DS,"download")
stuDG3.DataSource = DS.Tables("download").DefaultView '指定stuDG控件的数据源
stuDG3.DataBind() '将数据源与stuDG控件绑定
conn.Close()
End Sub
Sub totalshow_sort(sender As Object, e As DataGridsortcommandEventArgs) 'BindGrid()指定数据源,并绑定到DataGrid控件
sortfield=e.sortexpression
BindGrid()
End Sub
Sub BindList()
Dim conn As New OleDbConnection()
Dim cmd As New OleDbCommand()
Dim DS As New DataSet()
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("vod.mdb")
conn.Open()
cmd.Connection = conn
cmd.CommandText = "Select 影片名 from download"
Dim objAdpt As New OleDbDataAdapter(cmd)
objAdpt.Fill(DS,"download")
StuDL.DataSource = DS.Tables("download").DefaultView
StuDL.DataBind()
conn.Close()
End Sub
</Script>
2.4.2 视频详细信息显示List.aspx
1. 页面示例
下图为视频信息详细内容显示所看到的页面效果。
2. 页面所涉及的数据库表信息
此页使用了系统中的信息记录表“download”。通过多个textbox控件进行读取了影片版本、影片类型、运行环境、授权方式、影片大小和影片评价的内容,并且通过datalist控件内嵌asp代码实现了读取“download”数据库表中的“海报图”的图片路径,实现了对海报图片的显示。
3. 页面代码
以下代码是一个实现页面加载的函数,在页面加载的时候首先把Artname的值读取到id值为lbtext1的lable控件里,首先通过判断session对象从default.aspx传来的flag值是否为空,若为空页面加载失败,在页面的顶部显示提示文字以及超连接“您还不是会员,请 注册”,若flag值不为空则成功加载页面,并且成功读取数据库表信息。在函数的开头定义了一个全局变量字符串play,并通过session对象把“download”中的与Artname里的影片名对应的字段内容“影片名”、“filename”,“filename1”,“filename2”传到视频播放页面playrm.aspx和playwin.aspx中。
dim play as string
sub page_load(sender as object,e as eventargs)
if not ispostback then
lbtext1.text=request("Artname")
end if
if session("flag")<>""
Dim cmd As New OleDbCommand()
Dim objReader As OleDbDataReader
Dim i As integer
dim ds as new dataset()
dim conn as new OLEDBconnection()
conn=new OLEDBconnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath("vod.mdb"))
cmd.Connection = conn
dim mycommand as new OLEDBDataAdapter()
mycommand=new OLEDBDataAdapter("select * from download where 影片名='"& Request("Artname") & "'",conn)
conn.open()
mycommand.fill(ds)
mydatalist.datasource=new dataview(ds.tables(0))
mydatalist.databind()
cmd.CommandText = "Select * From download where 影片名='"& Request("Artname") & "'"
objReader = cmd.ExecuteReader()
Do While objReader.Read()
lbtext2.Text = objReader.Item("影片版本" )
lbtext3.Text = objReader.Item("影片类型" )
lbtext4.Text = objReader.Item("系统要求" )
lbtext5.Text = objReader.Item("影片性质" )
lbtext6.Text = objReader.Item("大小" )
lbtext7.Text = objReader.Item("整理日期" )
session("filename")=objReader.Item("影片名")
session("filename1")=objReader.Item("filename")
session("filename2")=objReader.Item("filename1")
session("filename3")=objReader.Item("filename2")
if objReader.Item("movie")<>"" then
if objReader.Item("movie")="win" then
play="playwin.aspx"
else
play="playrm.aspx"
end if
end if
Exit Do
Loop
ObjReader.Close() '关闭DataReader对象
conn.Close()
else
response.write("您还不是会员!请:注册")
end if
end sub
2.4.3 类别视频显示dongzuo.aspx
1.页面示例
下图为类别视频显示所看到的页面效果。
2.涉及的数据表信息
此页面使用了系统中的信息记录表download。
4. 页面代码
以下代码实现了根据download数据表中不同classid的对视频信息进行分类显示,把影片总共分为十类(包括动作片、科幻片、恐怖片、爱情片、喜剧片、电视剧、卡通类、战争片、记录片、武侠片),用户可以选择自己想看的视频类别,并且显示每个影片的影片名,影片性质,整理日期,大小,影片版本,系统要求,评分。
Sub Page_load(sender as object,e as eventargs)
dim ss=Request("classid")
response.write ("电影类别编号:"&ss)
Dim conn As New oledbconnection()
dim SQLStr as string
dim cmd as new oledbcommand()
conn.connectionstring = "provider=Microsoft.jet.oledb.4.0;data source=" & server.mappath("vod.mdb")
conn.open()
SQLStr = "Select 影片名,影片性质,整理日期,大小,影片版本,系统要求,评分 from download where classid =? "
cmd = new OleDbCommand(SQLStr,conn)
dim para as new oledbparameter("@classid",OleDbType.VarChar,50)
cmd.parameters.add(para)
cmd.parameters("@classid").Value = Request("classid")
dim objReader as OleDbDataReader
objReader = cmd.ExecuteReader()
myDataGrid.DataSource =objReader '定义DataGrid对象的数据源
myDataGrid.DataBind() '绑定DataGrid对象的数据源
objReader.close()
conn.close()
End Sub
2.4.4 Mediaplayer视频播放窗口playwin.aspx
1 页面示例
下图为利用Mediaplayer视频播放所看到的页面效果
2. 涉及的数据库表信息
此页使用了系统中的信息记录表download。
3. 页面代码分析
以下页面载入代码,当页面载入时判断是否会员,若非会员显示注册提示信息,若为会员,则把从list.aspx传来的影片路径利用session对象赋值给全局字符串变量url以便下面媒体播放object调用url的值。
dim url as string
sub page_load(sender as object,e as eventargs)
if session("flag")="" then
response.write("对不起!此为会员程序,请注册成我们的会员!")
end if
if request("downid")="2" then
url=session("filename2")
elseif request("downid")="3" then
url=session("filename3")
else
url=session("filename1")
end if
end sub
以下代码实现的方法是通过ActiveX控件方式在Web页面中嵌入MediaPlayer对象,并通过DHTML为内嵌对象动态指定视频流URL,从而为视频播放提供了一个统一的友好界面。 是Microsoft在IE4.0之后推出的,用来替代标签的对象定义标签(IE仍然支持),通过classid属性定义相应的对象类型。标签是Netscape浏览器支持的对象定义标签。其中CONTROLS参数用来指定播放器的控件外观,可以用多个控件进行组合,并通过CONSOLE参数进行关联。
<object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" id="MediaPlayer1" width="450" height="400">
<param name="AudioStream" value="-1">
<param name="AutoSize" value="0">
<param name="AutoStart" value="-1">
<param name="AnimationAtStart" value="-1">
<param name="AllowScan" value="-1">
<param name="AllowChangeDisplaySize" value="-1">
<param name="AutoRewind" value="0">
<param name="Balance" value="0">
<param name="BaseURL" value>
<param name="BufferingTime" value="5">
<param name="CaptioningID" value>
<param name="ClickToPlay" value="-1">
<param name="CursorType" value="0">
<param name="CurrentPosition" value="-1">
<param name="CurrentMarker" value="0">
<param name="DefaultFrame" value>
<param name="DisplayBackColor" value="0">
<param name="DisplayForeColor" value="16777215">
<param name="DisplayMode" value="0">
<param name="DisplaySize" value="2">
<param name="Enabled" value="-1">
<param name="EnableContextMenu" value="-1">
<param name="EnablePositionControls" value="-1">
<param name="EnableFullScreenControls" value="0">
<param name="EnableTracker" value="-1">
<param name="Filename" value="<% =url %>">
<param name="InvokeURLs" value="-1">
<param name="Language" value="-1">
<param name="Mute" value="0">
<param name="PlayCount" value="1">
<param name="PreviewMode" value="0">
<param name="Rate" value="1">
<param name="SAMILang" value>
<param name="SAMIStyle" value>
<param name="SAMIFileName" value>
<param name="SelectionStart" value="-1">
<param name="SelectionEnd" value="-1">
<param name="SendOpenStateChangeEvents" value="-1">
<param name="SendWarningEvents" value="-1">
<param name="SendErrorEvents" value="-1">
<param name="SendKeyboardEvents" value="0">
<param name="SendMouseClickEvents" value="0">
<param name="SendMouseMoveEvents" value="0">
<param name="SendPlayStateChangeEvents" value="-1">
<param name="ShowCaptioning" value="0">
<param name="ShowControls" value="-1">
<param name="ShowAudioControls" value="-1">
<param name="ShowDisplay" value="0">
<param name="ShowGotoBar" value="0">
<param name="ShowPositionControls" value="-1">
<param name="ShowStatusBar" value="-1">
<param name="ShowTracker" value="-1">
<param name="TransparentAtStart" value="0">
<param name="VideoBorderWidth" value="0">
<param name="VideoBorderColor" value="0">
<param name="VideoBorder3D" value="0">
<param name="Volume" value="-40">
<param name="WindowlessVideo" value="0">
</object>
2.4.5 Realplayer视频播放窗口playrm.aspx
1. 页面示例
下图为利用Realplayer视频播放所看到的页面效果
播放窗口
2. 嵌入式RealPlayer在播放视频文件时,一般采用把视频文件整个下载到本地然后进行播放。这对于较大的视频文件来说,速度让人难以忍受。解决这个问题的方法,一是把视频文件简单的分割成大小适中的小文件分段播放(由于 REAL 公司对 RM 格式的实行“封闭管理”,所以 RM 到目前为止还不能像 MPEG 等视频文件一样用视频软件自由的编辑);另外一种就是采用ram文件。RealPlayer简单的下载文本格式的ram文件,然后取出其中的真实地址,然后自动连接到网络进行实时的点对点播放。其缺点是增加了服务器负担。
3. 页面代码
由于此页面代码与Mediaplayer播放窗口playwin.aspx内部的代码类似,这里就不作详细介绍了。
2.5 视频信息搜索模块
视频信息搜索包含以下页面。
search.aspx
各个页面之间的关系 如下图所示。
2.5.1 default.aspx
1. 页面示例
下图为关键字搜索界面。
2. 涉及的数据库表信息
未涉及数据库的表的信息。
3. 代码省略。
2.5.2 搜索页面search.aspx
1. 页面示例
下图为搜索引擎结果的返回页面。
2. 页面所涉及的数据库表信息
此页面是按关键字搜索结果视频信息,涉及到视频信息表download的操作。
3. 页面代码
以下代码实现了利用datagrid控件显示视频信息搜索结果的函数的功能,此函数是以视频的“影片名”为关键字进行搜索,在数据库表中查找到与“影片名”相匹配的字段便成功的返回相关视频的详细信息,包含(影片名,影片性质,整理日期,大小,系统要求,评分)。
Sub Page_load(sender as object,e as eventargs)
dim ss=Request("classid")
Dim conn As New oledbconnection()
dim SQLStr as string
dim cmd as new oledbcommand()
conn.connectionstring = "provider=Microsoft.jet.oledb.4.0;data source=" & server.mappath("vod.mdb")
conn.open()
SQLStr = "Select 影片名,影片性质,整理日期,大小,系统要求,评分 from download where 影片名 =? "
cmd = new OleDbCommand(SQLStr,conn)
dim para as new oledbparameter("@影片名",OleDbType.VarChar,50)
cmd.parameters.add(para)
cmd.parameters("@影片名").Value = Request("keyword")
dim objReader as OleDbDataReader
objReader = cmd.ExecuteReader()
myDataGrid.DataSource =objReader '定义DataGrid对象的数据源
myDataGrid.DataBind() '绑定DataGrid对象的数据源
objReader.close()
conn.close()
End Sub
2.6 视频信息管理模块(后台管理模块)
视频栏目管理包含以下子模块
管理员登录验证
admin.aspx
manage.aspx
login.aspx
视频信息后台管理
freeadd.aspx
adminedit.aspx
adminuser1.aspx
uploads.aspx
各个页面之间的关系如下图所示。
2.6.1 admin.aspx
1. 页面示例
管理员登录界面,页面效果如下图所示,用户名:admin密码:546211
3. 面所涉及的数据库表信息
此页面向系统提供用户名和密码,并涉及到对数据库表“admin”的操作。
4.页面代码
由于本页面代码与default.aspx登录代码类似,这里就不作介绍了。
2.6.2 manage.aspx
1.页面示例
下图是管理员登录成功后的管理页面的效果。
理员登录成功后的管理页面
3. 没有使用数据库表。
2.6.3 freeadd.aspx
1. 页面示例
下图为管理员添加视频信息的页面效果。
添加视频信息
3. 页面所涉及的数据库表信息
此页面向系统提交视频信息,对download进行操作。
4. 页面代码分析
按钮触发函数,当用户点击把表单里面内容写入数据库表。
Sub Button_Click(Sender As Object, e As EventArgs)
Dim conn As New OleDbConnection()
Dim cmd As New OleDbCommand
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("../vod.mdb")
conn.Open()
cmd.Connection = conn
cmd.CommandText = "Insert into download values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"
cmd.Parameters.Add(New OleDbParameter("@影片名",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@movie",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@filename",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@filename1",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@filename2",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@影片版本",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@note",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@classid",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@影片性质",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@大小",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@系统要求 ",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@评分",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@整理日期 ",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@海报图",OleDbType.VarChar,20))
cmd.Parameters.Add(New OleDbParameter("@影片类型",OleDbType.VarChar,20))
cmd.Parameters("@影片名").Value = Request("filmName")
cmd.Parameters("@movie").Value = Request("format")
cmd.Parameters("@filename").Value = Request("down1")
cmd.Parameters("@filename1").Value = Request("down2")
cmd.Parameters("@评分").Value = Request("tuijian")
cmd.Parameters("@大小").Value = Request("filmsize")
cmd.Parameters("@海报图").Value = Request("filmimg")
cmd.Parameters("@note").Value = Request("txtComment")
cmd.Parameters("@filename2").Value = Request("down3")
cmd.Parameters("@影片性质").Value = Request("film1")
cmd.Parameters("@系统要求").Value = Request("need")
cmd.Parameters("@classid").Value = Request("filmff")
cmd.Parameters("@整理日期").Value = Request("date1")
cmd.Parameters("@影片类型").Value = Request("filmlei")
cmd.Parameters("@影片版本").Value = Request("filmban")
cmd.ExecuteNonQuery() '执行sql语句
conn.Close() '关闭数据库
Response.Write("OK")
filmName.text=""
filmban.text=""
format.text=""
filmsize.text=""
filmimg.text=""
txtComment.text=""
down1.text=""
down2.text=""
down3.text=""
filmff.text=""
film1.text=""
need.text=""
tuijian.text=""
date1.text=""
filmlei.text=""
End Sub
2.6.4 adminedit.aspx
1. 页面示例
下图为管理员修改、删除视频信息的页面效果。
视频信息修改删除页面
2. 页面所涉及的数据库表信息
页面对数据库表download进行操作。
3.页面代码
dim SQLStr as string
dim conn as oledbconnection
dim cmd as oledbcommand
Sub Page_load(sender as object,e as eventargs)
if session("flag") = "" then
response.Redirect("userreg.aspx")
else
if not ispostback then
UserName.text = session("flag")
conn = new oledbconnection()
conn.connectionstring = "provider=Microsoft.jet.oledb.4.0;data source=" & server.mappath("vod.mdb")
conn.open()
SQLStr = "Select * from 用户 where 用户名=?"
cmd = new OleDbCommand(SQLStr,conn)
dim para as new oledbparameter("@用户名",OleDbType.VarChar,50)
cmd.parameters.add(para)
cmd.parameters("@用户名").Value =session("flag")
dim objReader as OleDbDataReader
objReader = cmd.ExecuteReader()
while objReader.read()
OPass.text = objReader.Item("密码")
'headimg.text = objReader.Item("headimg")
'YourEmail.text = objReader.Item("电子邮件")
end while
objReader.close()
conn.close()
end if
end if
End Sub
Sub Button_Click(sender as object, e as eventargs)
SQLStr = "Update 用户 Set [密码]=?,[性别]=?,[用户主页]=? where 用户名=@用户名"
conn = new OleDbConnection()
conn.connectionstring = "provider=Microsoft.jet.oledb.4.0;data source=" & _
server.mappath("vod.mdb")
conn.open()
cmd = new oledbcommand()
cmd.connection=conn
cmd.commandtext= SQLStr
cmd.Parameters.Add(New OleDbParameter("@密码",OleDbType.VarChar,50))
cmd.Parameters.Add(New OleDbParameter("@性别",OleDbType.Boolean))
cmd.Parameters.Add(New OleDbParameter("@用户主页",OleDbType.VarChar,15))
cmd.Parameters.Add(New OleDbParameter("@用户名",OleDbType.VarChar,50))
cmd.Parameters("@密码").Value = Request("NewPassword")
If Sex1.Checked Then
cmd.Parameters("@性别").Value = True
Else
cmd.Parameters("@性别").Value = False
End If
cmd.Parameters("@用户主页").Value = Request("qq")
cmd.Parameters("@用户名").value = session("flag")
cmd.ExecuteNonQuery() '执行sql语句
conn.Close() '关闭数据库
End Sub
Sub Check_click(Sender as object,e as eventargs)
End Sub
设计心得
省略
答谢
省略
参考资料
1 ASP.NET后台数据库网站制作实例经典 作者:来宾,林盛雄 出版社:冶金工业出版社
2.ASP.NET程序设计教程 作者:吉根林 崔海源 出版社:电子工业出版社
3.ASP.NET程序设计教程 作者:肖金秀 冯沃辉 陈少涌 出版社:冶金工业出版社
4.萨师煊 王珊 编著 《数据库系统概论(第三版)》高等教育出版社
5.王易 编著《ASP.NET网站设计实例通》清华大学出版社
6.Richard Anderson《ASP.NET 1.0高级编程》清华大学出版社
本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。
序号 | 毕业设计全套资源(点击下载) |
---|---|
本项目源码 | 基于C#+asp.net+Access的视频点播系统设计与实现(源码+文档)C#.net_access_视频点播系统.zip |