网站的从数据库中获取视频

 

原理:

上传的文档存放在服务器中,上传的地址存放在数据库里。

当我们编写程序时把文档存到服务器的指定文件里,同时把存放的地址写入在数据库里,

当我们使用文档时从数据库中读出地址,然后根据地址在服务器中找到所用的文档。

例:上传视频文档

前台代码:

1 <asp:FileUpload ID="fuVideo" runat="server" />
2 <asp:Button ID="btnUpload" runat="server" Text="上传" OnClick="btnUpload_Click" />
3 
4 <div class="ad-video">
5 //VideoUrl 是后台定义的公共属性 即文档在服务器中的地址
6 <video src="<%=VideoUrl %>" controls="controls" style="width: 606px; height: 342px"></video>
7 
8 </div>
<%=VideoUrl %>从后台取VideoUrl值

后台代码:

 1 //声明公共属性
 2  public string VideoUrl
 3         {
 4             get
 5             {
 6                 return (string)ViewState["VideoUrl"];
 7             }
 8             set
 9             {
10                 ViewState["VideoUrl"] = value;
11             }
12         }
//ViewState类似于session,但session是会话级别.只要这会话在.session中存的数据就在.,viewstate 是页面界别.只要这个页面在viewstate中存的数据就在.
他的作用是保存数据
1   protected void Page_Load(object sender, EventArgs e)
2         {
3             if (!IsPostBack)
4             {
5 // .GetObject()能得到数据库中第一行第一列的数据(这里用到类SqlHelper,在博客里能找到压缩包SqlHelper.zip)
) 6 VideoUrl = SqlHelper.GetObject("select Value from Sys_SystemConfig where Code='首页视频' ").ToString(); 7  } 8 }
解释:select Value from Sys_SystemConfig where Code='首页视频' 
Sys_SystemConfig是表名
Value是存放文档地址的列名
Code是列名,根据code的值找到表中的某条数据
 
ID
Code
Value
 1  视频  1111
 2  首页视频  2222
 3  音频  3333

 

 

 

 

 

 

 

 1    protected void btnUpload_Click(object sender, EventArgs e)
 2         {
 3             string savePath = string.Empty;
 4             //如果选择了文件
 5             //fuVideo是fileupload控件的ID
 6             if (fuVideo.HasFile)
 7             {
 8                 //保存位置
 9                 //"/Upload/video"是服务器中存放的地址
10                 string saveDir = Server.MapPath("/Upload/video");
11                 //如果目录不存在  创建目录
12                 if (!Directory.Exists(saveDir))
13                 {
14                     Directory.CreateDirectory(saveDir);
15                 }
16                 //修改保存的文件名为 年(yyyy)月(MM与分区分)日(dd)时(hh)分(mm)秒(ss)毫秒(ff)+后缀
17                 //fuVideo.FileName是上传文档的后缀
18                 string fileExt = Path.GetExtension(fuVideo.FileName).ToLower();
19                 string upFileName = DateTime.Now.ToString("yyMMddhhmmssff") + fileExt;
20                 //后缀是否是.mp4文档
21                 if (fileExt != ".mp4")
22                 {
23                  //ScriptHelper.ShowAlertScript相当于respons.write()
24                     ScriptHelper.ShowAlertScript("只能上传视频文件");
25                     return;
26                 }
27                 string fileSavePath = Path.Combine(saveDir, upFileName);
28                 //保存文件
29                 fuVideo.SaveAs(fileSavePath);
30                 savePath = "/Upload/video/" + upFileName;
31             }
32                // 数据库更新
33             string str = "update Sys_SystemConfig set Value='"+savePath+"' where Code='首页视频'";
34             // .Execute()执行 成功是true
35             if (SqlHelper.Execute(str))
36             {
37                 ScriptHelper.ShowAlertScript("上传成功");//相当于Response.write();
38             }
39             else
40                 ScriptHelper.ShowAlertScript("上传失败");
41 
42         }

 

posted @ 2017-11-25 22:58  未生1996  阅读(372)  评论(0编辑  收藏  举报