




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
i 在线视频网的设计毕在线视频网的设计毕 业论文业论文 目目 录录 1 1 引言引言 1 1 1 1 在线视频简介 1 1 2 市场需求及项目可行性研究 1 1 2 1 市场需求分析 1 1 2 2 项目可行性研究 2 2 2 系统开发工具及平台介绍系统开发工具及平台介绍 3 3 2 1 BROWSER SERVER三层结构 3 2 2 ASP NET 技术简介 4 2 3 C 语言介绍 5 2 4 SQL SERVER 2005 简介 6 2 5 开发环境及运行环境 7 3 3 系统功能分析及结构设计系统功能分析及结构设计 8 8 3 1 功能需求分析 8 3 2 业务流程图 9 3 3 数据库设计 11 3 3 1 数据库创建 12 3 3 2 数据库的逻辑结构设计 12 3 3 2 安全保密设计 15 3 4 网站文件组织结构 15 4 4 系统详细设计系统详细设计 1818 4 1 会员模块 18 4 1 1 会员注册 18 4 1 2 会员登录 21 4 2 3 视频上传及管理 22 4 2 4 评论管理 25 4 2 5 个人信息更新 27 4 2 管理员模块 29 4 2 1 管理员登录 29 4 2 2 视频管理 30 4 2 3 会员管理 32 ii 4 2 4 公告管理 33 4 3 前台用户浏览模块 34 4 3 1 视频分类列表 34 4 3 2 视频播放模块 36 4 3 3 视频评论模块 38 4 4 公共类设计 39 4 4 1 Web Config 文件配置 39 4 4 2 数据操作类设计 39 5 5 系统测试系统测试 4141 5 1 用户注册及视频上传测试 41 5 2 视频审核及播放测试 42 5 3 其它测试 44 6 6 结束结束 4545 参考文献参考文献 4646 谢谢 辞辞 4747 1 1 1 引言引言 在线视频出现的最初动力是人们对广播电视的更高需求 在传统的电视中 观众完全是被动的 节目提供者播放什么节目 观众就只能观看什么节目 节 目的播放时间也是无法按照观众的意愿改变的 尽管电视台可以提供很多的节 目 但要想完整地收看到一个自己满意的节目 对于许多人来讲也是不太容易 做到的 因为在快节奏的现代生活中 许多人不可能为了看某一个电视节目而 预先安排自己的时间 被动收看节目的人们希望能够按照自己的需要自由地点 播节目 在线视频的出现正迎合了人们的这种需求 这种信息服务方式符合人 们对信息资源更深层次的需要 1 11 1 在线视频简介在线视频简介 在线视频 英文简称 Online Video 指的是在 INTERNET 中按照用户的喜 好随意的播放视频 ONLINE VIDEO 有很广泛的含义 包含了娱乐 教育 商业 等领域的多种应用 如影片点播 Movie On Demand 热点新闻点播 Hot News On Demand 交互视频游戏 Interactive Video Games 和远程教学 Long Distance Learning 等 在线视频是一种受用户控制的视频分配业务 它使得用户可以交互的访问 远端服务器所存储的丰富节目源 它的实质是信息的使用者根据自己的需要主 动获得多媒体信息 在线视频与传统电视有本质不同 主要体现在以下两个方 面 首先 在线视频具有交互性 用户可根据个人需求选择视频节目 并指定该 节目的起始时间 从这一点来说 在线视频也可以称为交互式在线视频 而传统 电视是按事先安排好的程序播放节目 用户在选择和观看节目方面是被动的 只有频道选择权 没有播放控制权 更不能对视频进行交互式操作 其次 ONLINE VIDEO 系统中的信号是数字化的 而传统电视中的信号是模拟的 1 21 2 市场需求及项目可行性研究市场需求及项目可行性研究 1 2 11 2 1 市场需求分析市场需求分析 目前具有 ONLINE VIDEO 功能的网站很多 如国内比较出名的土豆网 优酷 网 百度视频等等 随着流媒体技术和宽带网络的发展 网民对网络信息表达 2 方式要求的提高 视频技术被越来越多的各类网站所采用 新浪 搜狐等大型 综合门户网站大规模采集 发布视频信息 土豆网 优酷网等专业的视频分享 网站快速崛起 与此同时 新闻网站对视频技术也越来越重视 对视频技术加 大投入并进行开发和使用 由此可见 中国的视频网站领域正在以跨越式的方 式向前推进 此项技术在将来的应用必将俞加广泛 因此开发本系统不论是从 专业技术方面来讲 还是市场前景来看都有着深远的意义 1 2 21 2 2 项目可行性研究项目可行性研究 可行性是指软件所能带来的经济效益与开发设计所需要的投资相比 是否 相适宜 同时还要看此软件能否真正给用户带来足够的经济效益 我们开发的 这套系统正是考虑系统开发的成本而设计 本系统的开发在经济上是完全可行 的 此软件不需要大量的经费 而且是个人独立设计 可以节省许多费用 同 时也可提高个人的实际动手能力 从技术可行性分析 在线视频网站在国外已 经运用达十年之久 各项技术已经非常成熟 综合以上技术特点 为了降低成本 我们采用 PC 服务器作为视频服务器 而且 PC 服务器的性能还在不断提高 支持的并发流数也在增加 为了解决多并 发流数 我们采用多台 PC 服务器以集群的形式 通过控制网关完成服务器之间 的协调 提高系统的利用率 控制网关以及集群服务器技术是我们的技术增值 点 另外 由于采用集群形式 我们不要求 PC 服务器实现最 大流数 可以采 用低档 PC 服务器和 IDE 硬盘 这样又可以提高单台视频服务器的性能价格比 经过我们预研和测试 服务器的瓶颈不在 CPU 这样可以用低档 CPU 和主板 采用 IDE RAID 卡和 7200 转 IDE 硬盘的服务器仍可支持三 四十个并发流 控 制网关的技术经过前 期的预研也是可行的 系统的整个方案都是我们自行开发 并在通用的软硬件平台上运行 具有较强的灵活性 3 2 2 系统开发工具及平台介绍系统开发工具及平台介绍 2 12 1 Browser ServerBrowser Server 三层结构三层结构 选择合适的系统体系架构是一项影响整个应用系统设计的关键工作 架构 设计主要完成定义和说明包 子系统 以及包与包之间的依赖关系与通信机制 B S 模式的三层结构是一种简单 成熟 并得到普遍应用的应用程序架构 它 将应用程序结构划为分三个相对独立层 包括用户表示层 业务逻辑层和数据 访问层 每一层只实现该相对独立层内的功能 而当任何一层发生变化时 只 要保持层间接口关系不变 则其它各层都不会受到影响 1 用户表示层 用户表示层也叫用户界面层 封装人机界面的所有表单和组件 是应用系 统与系统用户之间的直接接口 主要用于显示由业务逻辑层动态传送过来的数 据信息 结合使用相应的 HTML 标记和样式表定义来实现 或者提供给用户录入 数据信息并通过简单的校验后 经由数据接口传送给业务逻辑层 2 业务逻辑层 业务逻辑层主要完成对应用系统相关业务规则和逻辑的封装 在为用户表 示层访问提供功能调用的同时 它又通过调用数据访问层所提供的功能来访问 数据库 业务逻辑层主要根据系统设计的需要 通过构建系统的关键对象类 实现系统的大部分逻辑控制功能 3 数据访问层 数据访问层只能被业务逻辑层访问 并且系统只通过它访问数据库来获取 数据 当数据访问层根据业务逻辑层的要求与数据库进行交互时 主要完成从 数据库中提取数据库记录的查询和插入 修改与删除数据库记录的更新数据功 能 众所周知 数据库访问是动态信息管理应用系统中最频繁 最消耗资源的 操作 所以必须优化对数据库的访问策略 以提高系统的性能和可靠性 B S 模式的三层结构是一种严格的分层定义 它首先将应用系统复杂的开发工作进 行划分相对简单的小分块 然后在每一层中只实现系统相应层的功能设计 层 间的交互由相邻层对应的功能模块进行调用 信息传递只由接口进行传送 其 三层结构示意图如图 1 所示 4 业务逻辑包用户界面包数据访问包 表示层业务逻辑层数据访问层数据库 图图 1 1 B SB S 三层结构示意图三层结构示意图 2 22 2 ASP NETASP NET 技术简介技术简介 ASP NET 不仅仅是下一版本的 Active Server Pages ASP 它是统一的 Web 开发乎台 用来提供开发人员生成企业级 Web 应用程序所需的服务 ASP NET 的语法在很大程度上与 ASP 兼容 同时它还提供一种新的编程模型和结构 用 于生成更安全 可伸缩和稳定的应用程序 可以通过在现有 ASP 应用程序中逐 渐添加 ASP NET 功能 随时增强该 ASP 应用程序的功能 ASP NET 可以无缝的 与 HTML 编辑器和其他编程工具一起工作 当创建 ASP NET 应用程序时 开发人员可以选择使用 Web 窗体或 XML Web 服务 或以自己认为合适的方式进行融合 每个功能都能得到同一结构的支持 能够使用多种身份验证方案 缓存经常使用的数据 或者对应用程序的配置进 行自定义 接受客户端的数据请求 在用户进行查询时 当用户在客户端浏览器输入请 求数据 如查询条件 然后进行提交时 用户的请求数据以 HTTP 请求字符串形 式被发送回 Web 服务器 在 ASP NET 中 服务器端的 Request 对象负责处理请 求字符串 处理查询条件 对于用户的输入的查询条件 通过 Request 对象处理请求字 符串的数据后 可根据得到的数据 综合处理并生成相应的 SQL 查询字符串 其方法与常规的定义方法相同 连接数据库进行数据操作并得到相应记录 在 ASP NET 中 对数据的访问主 要是通过 ADO NET 对象来实现的 对 ASP NET 访问处理过程主要分为两个步骤 建立对数据库的连接和通过连接进行数据操作得到记录数据集 将记录生成结果页面 DataSet 对象作为标准的记录数据集 支持标准的 记录处理方法 比如求记录总数 得到记录字段值等 在得到查询记录后 通过 这些方法可以将查询结果生成页面 5 结果页面的生成与提交 将查询结果写入结果页面后 Web 服务器自动将 页面发送回客户端浏览器 同时 为了释放系统资源 应将创建的 DataSet 和 Connection 对象关闭并释放 2 32 3 C C 语言介绍语言介绍 C 是由 Microsoft 公司开发的一种新型程序设计语言 由于它是从 C 和 C 中派生出来的 因此具有 C 的功能 同时 它又像 Visual Basic 一样简 单 C 代表着程序设计语言演变的一个新阶段 它继承了 C 和 Java 这两种世 界上最重要的计算机语言的优点 并且还增加了指代 索引等创新性特点 同 时 C 语言利用了 NET 作为其强大的平台 使得它在 Windows 图形用户界面 ASP NET Web 应用 XML Web Service 及 ADO NET 数据库等方面有广泛的应用 程序设计语言 C 的特点 1 与 Web 的紧密结合 C 程序能方便的与 Web 程序进行集成 利用 ASP NET 的强大功能 C 能与 Web 标准 如 HTML 和 XML 相结合 C 还能方便地开发 Web 服务 紧密地结合 SOAP Simple Object Access Protocol 使得 C 开发大规模深层次的分布式 应用成为可能 2 安全稳定 C 特有的机制是其安全性的保障 同时它去除了 C 中易造成错误的指针 增加了自动内存管理等措施 保证了 C 程序运行的可靠性 内存管理中的垃圾 收集机制减轻了开发人员对内存管理的负担 NET 平台提供的垃圾收集器 Garbage Collection GC 将负责资源的释放与对象撤销时的内存清理工作 同时 变量的初始化 类型检查 溢出检查等功能也充分保证了 C 程序的安全 稳定 3 具有丰富的类库 C 提供了大量的类 以满足网络化 多线程 面向对象系统的需要 能用相应的类来实现从低级网络操作到高层网络应用 语言包 提供的支持包括字符串处理 多线程处理 异常处理 数学函 数处理等 可以用它简单地实现 C 程序的运行平台 实用程序包 提供的支持包括哈希表 堆栈 可变数组 时间和日期等 6 输入输出包 用统一的 流 模型来实现所有格式的输入与输出 包括 文件系统 网络 输入与输出设备等 图形用户界面的功能强大 不仅能实现 Windows 窗口应用程序 而且可 以实现 Web 窗体 应用 4 灵活性和兼容性 在简化 C 语法的同时 C 并没有推动灵活性 C 允许与 C 风格的需要传 递指针型参数的应用程序接口进行交互操作 动态链接库的任何入口点都可以 在程序中进行访问 C 遵守 NET 的 CLS 从而保证了 C 组件与其他语言 如 Visual Basic Visual C Jscript J 等 的组件间的互操作性 5 支持多线程 C 中定义了一些用于建立 管理多线程的类和方法 使得开发具有多线程 功能的程序变得简单 容易和有效 2 42 4 SQLSQL serverserver 20052005 简介简介 SQL Server 2005 是 Microsoft 公司开发的大型关系数据库管理系统 具 有强大的关系数据库创建 开发 设计和管理功能 SQL Server2005 将数据库 与 Internet 紧密连接 可以通过 Web 浏览器显示数据的操作 具有客户机 服 务器的结构 SQL Server 2005 提供了对分布式事务处理的支持 并对开发工 具具有良好的支持 为大型数据库项目提供了企业级解决方案 SQL Server 2005 也提供了很多个新特性来节省精力 时间和金钱 从编 程到管理能力 这个版本的 SQL Server 都优于其他版本的产品 并且它还对 SQL Server 2000 中已经存在的特性进行了加强 在系统开发中具有很强的优 势 1 NET 框架主机 使用 SQL Server 2005 开发人员通过使用相似的 语言 例如微软的 Visual C NET 和微软的 Visual Basic 将能够创立数据 库对象 开发人员还将能够建立两个新的对象 用户定义的类和集合 2 XML 技术 在使用本地网络和互联网的情况下 在不同应用软件之 间散步数据的时候 可扩展标记语言 XML 是一个重要的标准 SQL Server 2005 将会自身支持存储和查询可扩展标记语言文件 7 3 ADO NET 2 0 版本 从对 SQL 类的新的支持 到多活动结果集 MARS SQL Server 2005 中的 ADO NET 将推动数据集的存取和操纵 实现更 大的可升级性和灵活性 4 增强的安全性 SQL Server 2005 中的新安全模式将用户和对象分 开 提供 fine grain access 存取 并允许对数据存取进行更大的控制 另外 所有系统表格将作为视图得到实施 对数据库系统对象进行了更大程度的控制 5 Transact SQL 的增强性能 SQL Server 2005 为开发可升级的数据 库应用软件 提供了新的语言功能 这些增强的性能包括处理错误 递归查询 功能 关系运算符 PIVOT APPLY ROW NUMBER 和其他数据列排行功能等 2 52 5 开发环境及运行环境开发环境及运行环境 开发环境 AMD Athlon tm 64 Processor 3000 512M 2 内存 80G 硬 盘 Microsoft Windows 2003 Enterprise Edition SP2 Microsoft Visual Studio 2005 C Sharp Microsoft SQL Server 2005 Sybase PowerDesigner 12 Microsoft Office Visio 2007 Adobe Photoshop CS3 Extended 运行环境 Intel Pentium 2 及以上处理器 32M 以上内存 4G 以上硬 盘 Microsoft Windows 9X NT 操作系统 安装了 SQL Server 服务器 确保机器上安装有 Net FrameWork 1 0 或者以上版本 8 3 3 系统功能分析及结构设计系统功能分析及结构设计 3 13 1 功能需求分析功能需求分析 在线视频系统需要实现的功能包括会员模块 管理员模块 以及视频信息 的展示和播放等 具体来讲 它包括会员模块中的注册 登录 视频上传修改 以及评论管理 管理员模块中的视频审核删除 用户管理 公告管理等 同时 增加了按视频的类别来显示等功能 在对系统的功能和需求进行详细分析之前 首先要根据使用该网站的用户 角色的不同分为下面三种用户 管理员各项功能 1 视频信息审核删除 2 注册用户管理 3 公告管理 4 首页幻灯管理 普通会员各项功能 1 视频上传 2 已上传视频修改删除 3 视频评论 4 个人信息更新 游客 1 搜索视频信息 2 视频观看 这样 在对用户进行划分后 得出系统分析如图 2 所示 9 视频点播系统 管理员 普通会员 后台登录 公告幻灯管理 用户管理 视频管理 注册登录 评论管理 视频管理 视频信息审核 视频信息删除 视频上传 视频删除 信息更新 游客 视频观看 视频搜索 图图 2 2 系统功能分析系统功能分析 3 23 2 业务流程图业务流程图 1 会员注册 在注册页面 用户填写用户名 密码及邮箱等基本信息后 需要经过系统检验其合法性 如果通过 则注册成功 用户的信息保存到数据 库用户信息表中 否则重新填写信息 直到通过 其业务流程图 3 如示 输入会员信息 开始 通 过 会员信息持久 化 结束 不 通 过 检验合法性 图图 3 3 会员注册会员注册 10 2 会员登录 在登录界面 用户输入用户名和密码 经系统检验通过后 根据用户的权限 进入相应的操作界面 其业务流程图 4 如下 图图 4 4 会员登录会员登录 3 视频上传 游客可以浏览本站的所有审核视频 但不能进行评论 对 于注册用户 系统会判断其是否登录 如果已登录 则可以上传自己的视频 也可回复视频 其业务流程图 5 如下 图图 5 5 视频上传视频上传 正 确 错 误 开始 输入用户信息 检验用户名密码 根据角色授权 结束 束 否 是 开始 用户是否登录 发表视频 视频信息修改 确认 结束 11 4 管理员模块 网站管理员可以对视频信息进行审核及删除不符合规则 的内容 同时可以对注册会员进行管理 对公告和首页幻灯进行维护 如图 6 所示 管理员界面 审核删除视频 用户管理 公告管理 首页幻灯管理 图图 6 6 管理员权限管理员权限 5 游客浏览本网站可以观看视频并运用搜索功能快速找到自己需求的内 容 如图 7 所示 游客进入 浏览视 频信息 搜索视 频信息 浏览分类视频 浏览视频 详细信息 图图 7 7 游客浏览游客浏览 3 33 3 数据库设计数据库设计 数据库 Data Base 简称 DB 是按一定结构组织并长期存储在计算机内 的 可共享的大量数据的有机集合 在一个应用程序中 数据库的设计是数据 存储的核心工作 通过需求分析与数据流分析 设计适合电子邮件客户端系统 的数据库是整个系统设计的关键 选择合适的数据库 根据各功能设计字段 创建合理的表结构 表关系是实现数据库设计的首要任务 电子邮件客户端系 统可以作为个人多用户使用也可以作为企业使用 是一个中小型软件系统 为 了系统以后的扩展成为企业及系统的定位 系统采用了 SQL Server 2005 数据库 点击播放 12 SQL Server 2005 是微软公司开发的新一代企业级数据库产品 它提供了集 成的数据解决方案 增强了数据的安全性和可伸缩性 更易于创建 部署和管 理 以下是系统建立数据库的设计过程 3 3 13 3 1 数据库创建数据库创建 在创建数据库的逻辑表结构之前 首先需要创建数据库 本在线视频系统 的实现是通过 Microsoft SQL Server 2005 的 SQL Server Management Studio Express 直接创建数据库 开始菜单 程序 Microsoft SQL Server 2005 SQL Server Management Studio Express 在出现的对话框中选择 连接 在对象管理器 中的数据库文件夹上右键单击鼠标 在弹出的快捷菜单中选择 新建数据库 命令 则弹出数据库属性对话框 在该对话框中设置数据库的名字为 playVideo 并指定保存数据库的路径和其他属性 3 3 23 3 2 数据库的逻辑结构设计数据库的逻辑结构设计 在 SQLServer 2005 数据库管理系统中建立数据库 playVideo 再在此数据 库中建立 8 张数据表 分别是公告消息表 bulletin 管理员表 manageUser 个人信息表 userInfo 注册用户表 userRegister 评论信息表 videoIdea 视频信息表 videoInfo 视频来源表 videoPoll 视频分类表 videoTaxis 建立了表结构后 下面对表中各字段的数据类型 含义等进行定义与说明 1 公告消息表 bulletin 中字段定义与说明如表 3 1 所示 表表 3 13 1 公告消息表公告消息表 字段名字段名数据类型数据类型字段大小字段大小说明说明 idint4 消息 ID 主键 titlevarchar50 消息标题 contentvarchar100 消息内容 issuanceDatedatetime 发表时间 2 管理员表 manageUser 中字段定义与说明如表 3 2 所示 13 表表 3 23 2 管理员表管理员表 字段名字段名数据类型数据类型字段大小字段大小说明说明 idint4 管理员 ID 主键 namevarchar20 管理员用户名 passvarchar20 管理员密码 3 个人信息表 userInfo 中字段定义与说明如表 3 3 所示 表表 3 33 3 个人信息表个人信息表 字段名字段名数据类型数据类型字段大小字段大小说明说明 idint4 用户 ID 主键 userNamevarchar30 用户名 nicknamevarchar30 用户昵称 sexchar10 性别 imgvarchar100 用户图像 cityvarchar50 用户城市 QQvarchar20 用户 QQ speakvarchar200 用户签名 sumMarkint4 用户积分 registerDatedatetime 注册时间 4 注册用户表 userRegister 中字段定义与说明如表 3 4 所示 表表 3 43 4 注册用户表注册用户表 字段名字段名数据类型数据类型字段大小字段大小说明说明 idint4 用户 ID 主键 userNamevarchar30 用户名 userPassvarchar30 用户密码 passQuestionvarchar50 密保问题 passAnswervarchar50 密保答案 emailvarchar50 用户邮件 14 lockBit1 是否锁定 5 评论信息表 videoIdea 中字段定义与说明如表 3 5 所示 表表 3 53 5 评论信息表评论信息表 字段名字段名数据类型数据类型字段大小字段大小说明说明 idint4 评论 ID 主键 userNamevarchar30 用户名 contenttext 评论内容 videoIdint4 视频 ID issuanceDatedatetime 评论时间 6 视频信息表 videoInfo 中字段定义与说明如表 3 6 所示 表表 3 63 6 视频信息表视频信息表 字段名字段名数据类型数据类型字段大小字段大小说明说明 idint4 视频 主键 userNamevarchar30 用户名 videoTitlevarchar30 视频标题 videoContentvarchar500 视频详细内容 videoDatedatetime 视频发表时间 videoPathvarchar50 视频路径 videoPicturevarchar50 视频缩略图 videoTypechar10 视频类型 playSumint4 点击次数 flowerint4 视频顶的资料 tileint4 视频踩的资料 monthSumint4 视频月点击数 AuditingBit1 是否审核 7 视频来源表 videoPoll 中字段定义与说明如表 3 7 所示 表表 3 73 7 视频来源表视频来源表 15 字段名字段名数据类型数据类型字段大小字段大小说明说明 idint4 ID 主键 ipvarchar30 发布来源 IP videoIdint4 视频 ID 8 视频排行表 videoTaxis 中字段定义与说明如表 3 8 所示 表表 3 83 8 视频分类表视频分类表 字段名字段名数据类型数据类型字段大小字段大小说明说明 videoIdint4 视频 ID 主键 videoTypechar10 视频类型 videoTitlevarchar50 视频名称 playSumint4 点击次数 taxisMonthchar10 统计月份 3 3 23 3 2 安全保密设计安全保密设计 作为一个管理系统 其中的数据资料不允许随意更改 系统须有保密措施 系统数据库将设置操作员表 将管理员名称和密码记录在操作员表中 拥有管 理员权限的操作员才能正常登录本系统 非操作人员将不能打开本系统 因此 为保证系统正常运行 拥有权限的人员才能进行数据库进行维护操作 对于一个数据库而言 安全性是指保护数据库不被破坏 偷窃和非法使用的 性能 一个设计良好的安全模式能使用户的合法操作变得很容易 同时使非法操 作和意外破坏很难或不可能发生 SQL Server 2005 的安全性分为两类 数据库安 全性和应用程序安全性 数据库安全性以信息资源和信息资源的用户为主要管 理对象 一个用户只要具有对某个对象的访问权限 则无论使用什么工具 都可以 对该对象进行访问 客户端层和数据库层隔离 客户端无法接触本质的数据库 无 法进行非法的修改和破坏 使得数据库得到有效安全的保护 3 43 4 网站文件组织结构网站文件组织结构 网站文件结构如图 8 所示 16 图图 8 8 网站文件结构网站文件结构 下面将对文件作说明 1 APP CODE 文件夹 公共类设计 2 APP DATA 文件夹 数据库存放目录 3 css css 文件 网站 CSS 样式表 4 images 文件夹 网站样式图片存放目录 5 imgFile 文件夹 用户上传视频缩略图存放目录 6 imgHead 文件夹 注册用户图像存放目录 7 manage 文件夹 网站后台目录 8 playFile 文件夹 用户上传视频存放目录 9 user 文件夹 用户目录 17 10 webUser 文件夹 用户自定义控件存放目录 11 GetPass aspx 文件 注册会员找回密码 12 index aspx 文件 网站首页 13 login aspx 文件 注册会员登录页面 14 play aspx 文件 视频播放 15 Register aspx 文件 用户注册页面 16 searchList aspx 文件 视频搜索 17 userInfo aspx 文件 会员详细信息页 18 userPage aspx 文件 会员排行 19 videoCartoon aspx 文件 动漫视频展示 20 videoFilm aspx 文件 电影视频展示 21 videoHumour aspx 文件 搞笑视频展示 22 videoNew aspx 文件 最新视频展示 23 videoPlaySum aspx 文件 人气视频排行 24 videoSport aspx 文件 体育视频展示 25 Web Config 文件 网站配置文件 18 4 4 系统详细设计系统详细设计 4 14 1 会员模块会员模块 在线视频网站系统具有很强的互动性 它通过吸引会员注册并且通过会员 上传视频信息以及对视频进行评论来调动用户的参与 下面讲逐步介绍会员模 块具体功能的实现 4 1 14 1 1 会员注册会员注册 游客可以填写必要信息 注册为本站会员 如不是本站的会员 将可通过 注册按钮进入注册 其页面如下图 9 所示 图图 9 9 会员注册会员注册 其在 Visual Studio 中的效果如图 10 所示 19 图图 1010 VisualVisual StudioStudio 中的注册页面中的注册页面 注册时需要填写基本账户信息和 E mail 提交注册表单后 服务器要对提 交的内容进行验证 如果有填写错误的项就要给出出错提示信息 并允许重新 填写提交 在该处用户注册时做了一个检测用户名是否存在按钮 当用户输入用户名 并点击此按钮时会进行用户名的比对 此实现代码为 protected void btnSelectName Click object sender EventArgs e if txtName Text 判断用户输入的用户名是否为空 调用自定义方法判读用户名是否已经注册 if selectName Response Write alert 用户名已存在 else Response Write alert 可以注册 else Response Write alert 用户名不能为空 protected bool selectName 判断用户名是否存在 20 string userName txtName Text 获取用户输入的注册名 编写SQL 语句查询注册名是否存在 string sqlSel select from userRegister where userName userName if operateData getCount sqlSel 0 return true else return false 其中 由于填写错误项而导致的注册不成功的情况可以分为 1 输入为空 2 输入的信息不满足指定的格式 3 两次输入的密码不匹配 对于它们的检 验 是通过在用户注册页面中增加几个验证控件来完成的 它们分别是 RequiredFieldValidator 控件 用来检查输入是否为空 在这个表单中 所有输入框都需要这个验证控件 RegularExpressionValidator 控件 用来检查用户输入的信息是否满足 指定的格式 用户名和电子邮件需要用到这个控件 CompareValidator 控件 用来验证两次输入的密码是否相同 ValidationSummary 控件 用来给出出现错误的总结信息 这几个控件的使用和代码由本系统的实现可以证明 在此就不再介绍了 任何填写错误将导致用户注册不成功 这时程序就会给出出错提示并允许重新 填写提交 当用户提交的信息都正确是单击完成按钮即可完成注册 用户信息会同时 记入个人信息表 userInfo 实现其功能关键代码如下 protected void btnEnd Click object sender EventArgs e 获取昵称 string nickname txtNickname Text 获取性别 string sex if rbtnlsSex SelectedValue 男 sex 男 else if rbtnlsSex SelectedValue 女 sex 女 if img 判读用户是否上传头像未上传使用默认头像 21 img imgHead default gif string city txtCity Text 获取所在城市 string qq txtQQ Text 获取qq string speak txtSpeak Text 获取留言 编写SQL语句更新用户的详细信息 string sqlUp update userInfo set nickname nickname sex sex img img city city qq qq speak speak where userName Name if operateData execSql sqlUp Response Write alert 添加成功 location user userIndex aspx else Response Write alert 添加失败 4 1 24 1 2 会员登录会员登录 点击主页右上角的登录链接即可进入登录页面 此页面通过验证用户名和 密码是否正确来判断是否登录成功 页面效果如图 11 所示 图图 1111 会员登录会员登录 下面是该部分详细介绍代码 它包含在 login aspx cs 文件中 关键部分是 单击 登录 按钮后的响应函数 它根据输入的用户名和密码 将界面重定向到 用户的主界面上 下面是它的代码 protected void btnLogin Click object sender EventArgs e 22 string userName txtName Text 获取用户名 string pass txtPass Text 获取密码 编写SQL语句 查询用户名和密码是否正确 string sqlSel select from userRegister where username name and userPass pass if operateData login sqlSel userName pass 掉用自定义方法执行SQL语句 Session userName txtName Text 保存用户名 编写SQL语句 查询指定用户的信息 string sql select from userRegister where userName Session userName 调用公共类中的getRow方法 并接收该方法返回的SqlDataReader对象 SqlDataReader sdr operateData getRow sql sdr Read 读取一条记录 if Convert ToBoolean sdr lock 判断当前用户是否被锁定 Session userName null Response Write alert sdr lockCause ToString location index aspx else Response Write alert 登录成功 location user userIndex aspx else Response Write alert 用户名或密码错误 4 2 34 2 3 视频上传及管理视频上传及管理 会员用户登录成功后便可以进入用户中心页面 在此可以对视频进行上传 上传视频的时候会要求同时输入改视频的标题 简介 缩略图等信息 此处是 本系统的核心部分 会重点介绍起实现方法 视频上传页面效果如图 12 所示 图图 1212 视频上传视频上传 23 在此页面核心代码中会首先判断是否为登录用户 如果不是则会被迫退出 实现此功能代码为 protected void Page Load object sender EventArgs e if Session userName null Response Write alert 请您先登录 location login aspx 当信息输入完整后点击上传按钮会讲视频上传到数据库 在此处支持三种 格式的上传 分别为 AVI WMV FLV 其中视频播放器支持播放的格式为 FLV 若上传的不是 FLV 系统会自动调用工具将其转换为 FLV 实现程序代码 为 protected void btnUpVideo Click object sender EventArgs e string saveName DateTime Now ToString yyyyMMddHHmmssffff 获取当前的时间 string imgName fupImg FileName 获取上传图片的路径 更改上传图片的名称 imgName imgName Replace imgName Substring 0 imgName LastIndexOf saveName imgFile imgFile imgName 设置上传图片的保存路径 fupImg SaveAs Server MapPath imgFile 保存上传图片 string rd DateTime Now Ticks ToString 设置一个参数 使ie重新读取页面显示头像 ImageHead ImageUrl imgFile rd rd 显示上传的图片 string upFileName fileupVideo FileName if this fileupVideo HasFile 判断是否选择文件 获取文件的扩展名 string upExtension upFileName Substring upFileName LastIndexOf 1 判断扩展名是否正确 if checkExtension upExtension 获取上传文件所保存的路径 string upFilePath Server MapPath upFile upFileName 将文件保存到指定路径中 fileupVideo SaveAs upFilePath 获取当前时间 string playFile playFile saveName flv 获取视频转换后所保存的路径及文件名 try 判断上传的文件是否为flv格式 if upExtension flv string ss fileupVideo FileName string path fileupVideo PostedFile FileName 如果为flv格式直接保存到指定路径下 24 File Copy path Server MapPath playFile2 insertVideoInfo playFile imgFile else 调用公共类中的changeVideoType方法转换视频格式 if operateMethod changeVideoType upFileName Server MapPath playFile 调用自定义insertVideoInfo方法将视频信息保存到数据库中 insertVideoInfo playFile imgFile File Delete upFilePath 删除上传的视频 else Response Write alert 上传失败 删除上传的视频 File Delete upFilePath catch Exception ex Response Write ex Message ToString else Response Write alert 文件格式错误 private void insertVideoInfo string playFileh string imgFile string userName Session userName ToString 获取用户名 string videoTitle txtTitle Text 获取视频名称 string videoContent txtContent Text 获取视频内容 string date DateTime Now ToString 获取当前时间 string videoPath playFileh 获取视频路径 string videoPicture imgFile 获取图片路径 string videoType 获取视频的类型 int count RadioButtonList1 Items Count for int i 0 i count i if RadioButtonList1 Items i Selected 25 videoType RadioButtonList1 Items i Value break 编写SQL语句将视频的详细信息添加到数据库中 string sqlInsert insert into videoInfo values userName videoTitle videoContent date videoPath videoPicture videoType if operateData execSql sqlInsert Response Write alert 上传成功 编写SQL语句将当前用户的积分增加 string sqlUpd update userInfo set sumMark sumMark 100 where userName userName operateData execSql sqlUpd else Response Write alert 上传失败 自定义方法判断视频格式是否正确 private bool checkExtension string extension bool strReturn false 遍历数组判断当前上传的视频格式是否正确 foreach string var in this videoExtension if var extension strReturn true break return strReturn 4 2 44 2 4 评论管理评论管理 会员用户可以对视频进行评论 此版块为该用户的评论汇总 且在此可以 对评论进行恢复 删除 页面效果如图 13 所示 26 图图 1313 评论管理评论管理 其中视频评论列表采用 DataList 控件 后台代码主要完成以下功能 1 绑定 DataList 显示评论 protected void BinddataList string id string sqlSel select from videoIdea where videoId id order by id desc DataList1 DataSource operateData getRows sqlSel DataList1 DataKeyField id DataList1 DataBind 2 显示每个视频的评论个数 protected void gridViewName RowDataBound object sender GridViewRowEventArgs e if e Row RowType DataControlRowType DataRow string id gridViewName DataKeys e Row RowIndex Value ToString string sqlCount select count from videoIdea where videoId id e Row Cells 2 Text operateData getCount sqlCount ToString 3 设置显示页的索引 protected void gridViewName PageIndexChanging object sender GridViewPageEventAr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民用爆炸物品安全员培训课件
- 民法肖像权课件
- 大学军事考试题目及答案
- 我国新质生产力的发展趋势
- 河南新质生产力先锋图谱
- 民族课件边框
- 新质生产力主题写作:标题技巧
- 新质生产力企业立意高远
- 培养新质生产力的时代意义
- 新质生产力发展倡议书撰写指南
- 信息安全岗位竞聘
- 食品经营许可和备案管理办法培训2024
- 住院患儿实施院内转运临床实践指南2023版课件
- 打包机吊装方案
- 如何列好小说提纲
- 【新教材】部编道德与法治六年级上册-全册-表格式教案教学设计
- 文言实词本义引申义
- 07J902-3 医疗建筑(卫生间、淋浴间、洗池)
- 2024年电工(高级技师)职业鉴定理论考试题库-下(多选、判断题)
- 2024年网上大学智能云服务交付工程师认证考试题库800题(含答案)
- 公共数据交换技术规范
评论
0/150
提交评论