视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
基于ASP的在线点歌系统的设计与实现毕业设计
2025-09-29 16:28:27 责编:小OO
文档
  

毕业设计(论文)

    题    目:    基于ASP的在线点歌系统的设计与实现              

    院    系:           计算机与通信学院                 

    专    业:           计算机科学与技术                 

    学生姓名:     学 号:             

    指导教师:                                      

   

    

一  应用背景

在线点歌是近年来新兴的传媒方式,该技术是计算机技术,网络通信技术,多媒体技术等多学科,多领域融合交叉结合的产物。在线点歌系统使人们可以根据自己的兴趣在计算机或者电视上自由的点播节目库中的歌曲和信息。也可以将自己点播的歌曲送给自己的朋友。

在线点歌系统主要有以下功能:

1,歌曲做到分类显示

2,歌曲分类查询

3,歌曲在线试听及下载

4,将喜欢的歌曲直接发送给好友

5,系统支持尽量多的音乐格式

 二 系统设计

1,系统构架

    在点歌系统采用从数据层到应用层,最后到用户接口层进行设计。系统总体构架如下图所示。

        

    

 2,系统功能模块设计 

 

系统主要功能如下:

      1:歌曲在线试听及下载

2:将喜欢的歌曲直接发送给好友

3:系统支持多种音乐格式

     系统主要分为两大模块,如下图

                   

1. 用户类型

  系统用户分为两类:普通类用户和管理类用户。普通类用户可以对歌曲进行查询,试听,点播等操作。可以为别人在线点播歌曲。管理员用户在普通类用户权限上增加后台歌曲管理功能,可以对歌曲进行添加,删除,修改等操作。

2. 后台论坛管理模块

  此模块只对超级管理员用户开放。管理员用户可以对后台歌曲管理进行修改,可以对歌曲的名称,分类,歌手名称,地址等信息进行修改,也可以对歌曲进行增加和删除。

3.前台论坛管理模块

 此模块对所有用户开放。可以按照分类对歌曲进行各项权限范围内的操作。

3 系统主要工作流程

  1.在线点歌系统前台管理模块

      在线点歌系统前台管理程序流程图,如下:

2. 在线点歌系统后台模块

   在线点歌系统后台管理程序流程图,如下:

4 数据库的分析与设计

   本次开发的数据库包括5个数据表:点歌信息数据表,点歌网站基本信息,管理员基本信息,歌曲基本信息,歌曲分类基本信息。

本系统将使用SQL Server2000作为数据库管理系统。安装SQL Server2000,打开企业管理器,新建一个数据库,将其命名为dg。dg数据库中包含的数据表及其相应功能如下表:

           数据表

             功能

           Data

        存放点歌信息

           Home

        存放网站基本信息

           Password

        存放管理员基本信息

           Learning

        存放歌曲基本信息

           Type

        存放歌曲分类信息

                

   dg数据库包含的数据表及其功能

1.点歌信息表data

点歌信息表用于存放校友录内设置的班级信息,包括点歌编号(id),点歌人姓名(name),歌曲地址(picture),收歌人姓名(toname),收歌人Email地址(mail),点歌人地址(replyto),加入时间(addtime),密码(pass),祝福(message)9个字段,在已创建的SQL Server数据库中,右击表创建一个表,名为data,向表中添加字段。其中,id(点歌编号)字段作为该表的主关键字,标识为“是”,标识种子为“1”,标识增量为“1”,唯一标识了一个点歌信息。点歌信息表结构如下表:

    字段名

数据类型及长度     说 明

     备 注

id   int   点歌编号

    允许为空

    myname nvarchar(50)   点歌人姓名

    允许为空

    picture   nvarchar(100)   歌曲地址

    允许为空

    tonamenvarchar(50)   收歌人姓名

    允许为空

    mailnvarchar(50) 收歌人Email地址

    允许为空

    replyto   nvarchar(50)点歌人Email地址

    允许为空

    addtime   smalldatetime   加入时间

允许为空
    passnvarchar(50)   密码

    允许为空

    message   ntext   祝福

    允许为空

2.网站基本信息表home

网站基本信息表用于存放网站基本信息,包括网站名称(home),每页最多歌曲数(duo)两个字段。网站基本信息表结构如下:

                               home

字段名数据类型及长度      说 明 

    备 注

  home nvarchar(255)

  网站名称

   主关键字

  duoint  每页最多歌曲数

   允许为空

3.管理员信息表password

     管理员信息表用于存放管理员账号,密码信息,包括编号(id),账号(adminname),密码(password),3个字段。其中,id(编号)字段作为该表的主关键字,标识为“是”,标识种子为“1”,标识增量为“1”,唯一标识了一个管理员的信息。管理员信息表结构如下:

字段名数据类型及长度    说 明

   备 注

   id int    编号

   主关键字

   adminname nvarchar(50)    账号

   不能为空

   passwordnvarchar(50)    密码

   不能为空

4. 歌曲基本信息表learning

歌曲基本信息表用于存放歌曲名称,地址等基本信息,包括歌曲编号,点击数,歌曲地址,加入时间,歌曲名称,歌手6个字段。其中,歌曲编号作为主关键字,标识为“是”,标识种子为“1”,标识增量为“1”,唯一标识了一个歌曲信息。点击数字段默认值为“0”。歌曲基本信息表如下:

                              learning

字段名数据类型及长度    说 明

    备 注

articleid int   歌曲编号

  主关键字

   hits int   点击数

  允许为空

   images1 nvarchar(255)   歌曲地址

  允许为空

   dateandtime

 smalldatetime   加入时间

  允许为空

   title nvarchar(255)   歌曲名称

  允许为空

   singer nvarchar(50)   歌手

  允许为空

5.歌曲分类信息表type

     歌曲分类信息表主要用于存放歌曲分类信息,包括分类编号,歌曲分类名称两个字段,其中分类编号作为主关键字,标识为“是”,标识种子为“1”,标识增量为“1”,

唯一标识了一个歌曲分类信息,歌曲分类信息表结构如下:

                                 type

字 段 名

数据类型及长度    说  明

    备  注

  typeid   int    分类编号

    主关键字

  type   nvarchar(255)  歌曲分类名称

    允许为空

  

点歌信息表data中的歌曲地址字段picture与歌曲基本信息表learning歌曲地址字段存在着对应关系。即picture字段的值必定在歌曲基本信息表learning中images1字段中存在。反之,歌曲基本信息表learning中images1字段中的值不一定在picture字段中存在。

4  IIS配置与SQL Server数据库连接

  1.IIS配置

   IIS是internet information server的缩写,是微软提供的internet服务器软件,包括web,FTP,Mail等服务器。

   IIS是Windows操作系统自带的组件,如果在安装操作系统时没有安装IIS,则应手动安装,安装步骤如下:

(1)打开控制面板窗口,双击添加或删除程序图标,运行添加或删除程序窗口。

(2)选择添加或删除程序窗口内添加/删除Windows组件选项,弹出Windows组件向导对话框。

(3)选中internet信息服务(IIS)复选框,单击下一步,执行操作。IIS安装完毕,接下来就是要对系统进行新建虚拟目录操作:

a:打开控制面板,双击管理工具图标,进入管理工具窗口。

b:双击internet服务管理器,进入internet信息服务窗口。

c:单击操作目录,选择下拉菜单新建虚拟目录命令。

d:弹出欢迎窗口,单击下一步按钮。

e:在别名文本框中输入映射后的名字,单击下一步。

f:在目录文本框中输入要映射的目录,单击下一步,进入设置访问权限设置窗口。

g:在这里选择正确的访问权限,再单击下一步,即完成设置。

(4)删除映射的方法:打开internet信息服务窗口,在虚拟目录别名上单击鼠标右键,选择删除命令即可。

   2.创建SQL Server数据库

   打开SQLServer的企业管理器窗口,右击数据库分支,弹出右击目录,选择新建数据库命令,弹出数据库属性窗口,在名称文本框内输入zxdg,单击确定按钮,完成创建。

按照要求建好数据库后,需要建立网站页面与后台服务器的链接,页面名称为articleconn.asp。以后当需要对程序中的数据库进行操作时,只需要用命令就可以直接调用该程序打开数据库,提高程序可读性,同时也提高了程序的便捷性。代码如下:

<%

Set conn=Server.CreateObject(“ADODB.Connection”)

connstr=”Provider=SQLOLEDB;DataSource=byd;InitialCatalog=dg;UserID=sa;Password=sa;”

conn.Open connstr

%>

5 在线点歌系统前台

1.系统首页页面

系统首页页面分为上下两部分组成。顶部为图片,中间显示网站主要信息。中间分左右两部分:左侧上部为歌曲查询,提供查询入口,中间为歌曲类别按钮,单击按钮右侧歌曲名称根据类别分类显示,下方点播歌曲公告栏,循环显示已经发送的歌曲信息,最下方为试听歌曲软件下载。右侧为歌曲名称列表。

系统首页页面代码如下:

   <%调用artcleconn.asp链接数据库%>

       <%调用home1.asp查询网站基本信息表%>

   a:创建过程检查是否输入查询内容

     创建过程checkinput检查检查是否输入查询内容。代码如下:

         //使用JavaScript语言

function checkinput()

{

//如果文本框keyword的内容为空,则弹出警示框,焦点集中在keyword文本框内,返回错误,否则返回正确

if(document.search.keyword.value==””)

  {

     alert(“请输入想查询的内容!”);

     document.search.keyword.focus();

     return false;

   }

   return true;

   }

->

  

2.判断跳转页面

判断输入跳转页面是否为空,如果为空,则默认跳转到第一页。代码如下:

<%

dim rs                                      ‘定义变量

MaxPerPage=rs(”duo”)                      ‘定义每页最大歌曲数

dim totalPut

dim CurrentPage

dim TotalPages

dim i,j

dim typename

dim ty

    ‘如果提交page返回变量不为空,则当前页变量currentPage等于提交变量page的值。否则当前页变量currentPage等于1

if not isempty(request(“page”))then

currentPage=cint(request(“page”))

      else

          currentPage=1

      end if

      dim rstype

      dim typesql

      dim typeid typename1

3.查询歌曲

 按照歌曲类型查询不同类型的歌曲。代码如下:

    ‘如果提交变量typeid不为空,则歌曲类型变量typeid等于下拉列表框typeid的值,否则等于0

     if not isEmpty(request(“typeid”))then

         typeid=request(“typeid”)

     else

         typeid=0

     end if

     dim sql

     

‘如果变量typeid等于0即显示全部歌曲,则变量等于查询歌曲信息表learning中歌曲类型编号字段typeid与歌曲类信息表type中歌曲类型编号字段typeid值相等的记录行,并按照歌曲编号降序排列

 if typeid=0 then

     sql=”selectlearning.*,type.typefromlearning,typewherelearning.typeid=type.typeid

order by learning.articleid desc”

else

‘如果变量typeid不为0,则查询歌曲信息表learning中歌曲类型编号字段typeid与歌曲类信息表type中歌曲类型编号字段typeid的值相等,且等于变量typeid,并按照歌曲编号降序排列

   sql=”selectlearning.*,type.typefrom learning,type where learning.typeid=type.typeid and learning.typeid=”&typeid&”oder by learning.articleid desc”

  end if

  Set rs=Server.CreateObiect(“adodb.recordset”)      定义一个recordset

  Rs.open sql,conn,1,1

4.分页显示歌曲曲目

如果查询歌曲记录为空,则输出提示,不为空则分页显示歌曲曲目。代码如下:

  if rs.eof and rs.bof then

      response.write”还没有任何歌曲

  else

     ‘变量totalPut等于记录总数

      totalPut=rs.recordcount

     ‘如果当前页数小于1,则变量currentpage等于1

if currentpage<1 then

          currentpage=1

      end if

  ‘判断当前显示歌曲数量是否大于记录总数,大于判断总歌曲数量是否可以被每页最大歌曲数量整除,当前页等于最后页

if(currentpage-1)*MaxPerPage>totalput then

         if(totalPut mod MaxPerPage)=0 then

             currentpage=totalPut\\MaxPerPage

         else

             currentpage=totalPut\\MaxPerPage+1

         end if

      end if

      ‘调用过程showContent,showpage1显示当前页面的歌曲数目

      if currentPage=1 then

          showpage totalput,MaxPerPage,”index.asp”

          showContent

          showpage1 totalput,MaxPerPage,”index.asp”

      else

if(currentPage-1)*MaxPerPage              rs.move (currentPage-1)*MaxPerPage

              dim bookmark

              showpage totalput,MaxPerPage,”index.asp”

              showContent

              showpage1 totalput,MaxPerPage,”index.asp”

          else

              currentPage=1

              showpage totalput,MaxPerPage,”index.asp”

              showContent

              showpage1 totalput,MaxPerPage,”index.asp”

          end if

       end if

       rs.close

      end if

      set rs=nothing

      conn.close

set conn=nothing

5.创建过程显示歌曲数目

  创建过程showContent,页面内显示歌曲曲目,代码如下:

      sub showContent

         dim i

         i=0

%>

  …

                               <%’表单属性&>

                          <%’文本框属性%>

                           …<%’下拉列表框属性%>

                           

                            全部歌曲

   <%’执行查询歌曲类型表type中,所有类型数据

       rst.open “select*from type”,conn,1

       ‘如果查询记录不为空,在下拉框循环插入歌曲类型名称

       do while NOT rst.EOF

%>

value=:”<%=rst(“typeid”)%>”><%=rst(“type”)%><%

       srt.MoveNext                    ‘指针下移

   Loop                               ‘循环结束

   rst.close                             ‘rst关闭

%>

                              src=”” align=”absmiddle”width=”51 height=”22” title=”查询” id=image1 name=image1><%’按钮属性%>

  …<%’以下为分类查询图片及其属性%>

”center”>

src=””width=”130”height=”30”border=”0”>

   ”center”>

    src=””width=”130”height=”30”border=”0”>

   ”center”>下载本文

显示全文
专题