上传文件到服务器

 1                 table class="table table-strippled exhibit-table"
 2                     tbody
 3                         tr
 4                             td class="background-title"i class="red-font"/ispan class="background-title" 备份文件/span/td
 5                             td
 6                                 form action="#" class="clearfix" id="uploadForm" method="post"
 7                                     input id="bkImg" type=file name="files"
 8                                            class="file" data-min-file-count="2" onchange="FileChange(‘bkImg‘, ‘uploadForm‘)"
 9                                 /form
10                             /td
11 
12                         /tr
13                     /tbody
14                 /table

HTML中上传框
 1 //图片上传
 2 var nameImg = "";//定义全局变量存储文件名
 3 function FileChange(inputId, uploadForm) {
 4     if ($("#" + inputId).val() == "") {
 5         return;
 6     }
 7     else {
 8         var formData = new FormData($("#" + uploadForm)[0]);
 9         $.ajax({
10             url: "/CContractMgr/SubmitImg",
11             type: "POST",
12             data: formData,
13             async: false,
14             cache: false,
15             contentType: false,
16             processData: false,
17             success: function (resu< ) {
18                 if (resu< .r  0) {
19                     nameImg = resu< .nameImg;//获取返回的文件名
20                 } else {
21                     if (resu< .message.trim() == "") { resu< .message = "系统错误,请重新操作!"; }
22                     layer.alert(resu< .message);
23                     $("#" + inputId).val("");
24                 }
25             }
26         });
27     }
28 }

JS
 1         /// summary
 2         /// 上传图片
 3         /// /summary
 4         /// returns/returns
 5         [HttpPost]
 6         public JsonResu<  SubmitImg()
 7         {
 8             var _r = 0;
 9             var _message = "";
10             var _nameImg = "";
11             //上传和返回(保存到数据库中)的路径
12             string uppath = string.Empty;
13             string savepath = string.Empty;
14             HttpPostedFileBase imgFile = Request.Files[0];
15             if (Request.Files.Count  0)
16             {
17 
18                 if (imgFile != null)
19                 {
20                     //创建图片新的名称
21                     string nameImg = DateTime.Now.ToString("yyyyMMddHHmmssfff");
22                     //获得上传图片的路径
23                     string strPath = imgFile.FileName;
24                     //获得上传图片的类型(后缀名)
25                     string type = strPath.Substring(strPath.LastIndexOf(".") + 1).ToLower();
26                     if (ValidateImg(type))
27                     {
28                         //拼写上传图片的路径
29                         var ImgUrl = "/Images/contract/contractImg/";
30                         uppath = Server.MapPath(ImgUrl);
31                         if (!Directory.Exists(uppath))//判断上传文件夹是否存在,若不存在,则创建
32                         {
33                             Directory.CreateDirectory(uppath);//创建文件夹
34                         }
35                         uppath += nameImg + "." + type;//图片保存路径
36 
37                         //拼写数据库保存的相对路径字符串
38                         savepath += ImgUrl + nameImg + "." + type;
39 
40                         //上传图片
41                         try
42                         {
43                             imgFile.SaveAs(uppath);
44                             _r = 1;
45                             _message = "上传成功";
46                             _nameImg = nameImg;
47                         }
48                         catch (Exception ex)
49                         {
50                             UtilityHelp.WriteLog(ex, ex.Message);
51                             _r = 0;
52                             _message = "上传异常!";
53                         }
54                     }
55                     else
56                     {
57                         _r = 0;
58                         _message = "合同备份仅支持PDF格式,请加密后重新上传!";
59                     }
60                 }
61             }
62             var json = new { r = _r, filename = savepath, message = _message, nameImg = _nameImg };
63             return Json(json, JsonRequestBehavior.AllowGet);
64         }
65 
66         /// summary
67         /// 图片上传类型
68         /// /summary
69         /// param name="imgName"/param
70         /// returns/returns
71         public bool ValidateImg(string imgName)
72         {
73             string[] imgType = new string[] { "pdf" };
74 
75             int i = 0;
76             bool blean = false;
77             string message = string.Empty;
78 
79             //判断是否为Image类型文件
80             while (i  imgType.Len >h)
81             {
82                 if (imgName.Equals(imgType[i].ToString()))
83                 {
84                     blean = true;
85                     break;
86                 }
87                 else if (i == (imgType.Len >h - 1))
88                 {
89                     break;
90                 }
91                 else
92                 {
93                     i++;
94                 }
95             }
96             return blean;
97         }

Controller控制器:

上传文件到服务器

原文地址:http://www.cnblogs.com/chizhida/p/7273079.html


最新回复(0)
/jishuWN6Eyld4I5BDspex0XX2CM_2FCmlyMyLdGKIO_2BHw_3D_3D4719258
8 简首页