jQuery MiniUI

标题: FileUpload上传到服务器后就总是提示上传失败 [打印本页]

作者: 1640102138    时间: 2013-8-16 11:39:03     标题: FileUpload上传到服务器后就总是提示上传失败

本帖最后由 1640102138 于 2013-8-16 11:40 编辑

我在本机用VS 2010调试上传控件FileUpload 时是没有问题的,但是上传到服务器后,总是提示上传失败,前端JS方法onUploadError(e)里的 "e"也不见有什么其它属性, 请问这是用来搞笑的吗?


以下是我的上传后台代码:


  1. bool flag = false;
  2.         string strMsg = string.Empty;
  3.         try
  4.         {
  5.             // 获得程序路径
  6.             string tempFile = Request.PhysicalApplicationPath;

  7.             //找到目标文件对象
  8.             HttpPostedFile uploadFile = Request.Files["Fdata"];
  9.             string cmd = Request.Params["cmd"];

  10.             // 如果有文件, 则保存到一个地址


  11.             string _json = Request.Params["data"];
  12.             string fid = Request.Params["fid"];
  13.             JArray ja = (JArray)JsonConvert.DeserializeObject(_json);
  14.             Maticsoft.BLL.major bll_major = new Maticsoft.BLL.major();
  15.             if (cmd == "addRow")
  16.             {
  17.                 major _major = new major();
  18.                 _major.key = ja[0]["key"].ToString();
  19.                 _major.ctype = ja[0]["ctype"].ToString();
  20.                 _major.text = ja[0]["text"].ToString();
  21.                 _major.years = Convert.ToInt32(ja[0]["years"].ToString());
  22.                 _major.nodetype = -1;
  23.                 _major.fid = int.Parse(fid);
  24.                 _major.logo = uploadFile.FileName;
  25.                 flag = bll_major.Add(_major);
  26.             }
  27.             if (cmd == "updateRow")
  28.             {
  29.                 int id = Convert.ToInt32(ja[0]["id"].ToString());
  30.                 major _major = bll_major.GetModel(id);
  31.                 _major.key = ja[0]["key"].ToString();
  32.                 _major.ctype = ja[0]["ctype"].ToString();
  33.                 _major.text = ja[0]["text"].ToString();
  34.                 _major.years = Convert.ToInt32(ja[0]["years"].ToString());
  35.                 _major.logo = uploadFile.FileName;
  36.                 flag = bll_major.Update(_major);
  37.             }

  38.             if (flag)
  39.             {
  40.                 if (uploadFile.ContentLength > 0)
  41.                 {
  42.                     string _path = Server.MapPath("/admin/usermanage/UploadImage/");
  43.                     uploadFile.SaveAs(string.Format("{0}{1}", _path, uploadFile.FileName));
  44.                     ImageClass.MakeThumbnail(_path + uploadFile.FileName, Server.MapPath(_path+"x" + uploadFile.FileName), 0, 60, "H", System.Drawing.Imaging.ImageFormat.Png);
  45.                 }
  46.             }
  47.         }
  48.         catch (Exception ex)
  49.         {

  50.             strMsg = ex.Data+"\\n"+ex.Message+"\\n"+ex.InnerException;
  51.         }

  52.         Response.Write((strMsg == "" ? flag.ToString() : strMsg));
复制代码



作者: nbakill2    时间: 2013-8-16 11:52:28

你用的是什么浏览器?

如果是IE ,哪个版本?

如果是谷歌或者火狐,是哪个版本?
作者: factory    时间: 2013-8-16 12:07:42

不是用来搞笑的,VS行,怎么可能部署到服务器就不行》?你自己检查服务器上路径对不对?或者直接用绝对路径试下
作者: 1640102138    时间: 2013-8-16 12:08:42

nbakill2 发表于 2013-8-16 11:52
你用的是什么浏览器?

如果是IE ,哪个版本?

360 6.0版本,本地用VS 调试时也是用360 6.0版本,都没问题,就是发布到服务器后就是提示上传失败,哎……头疼
作者: 1640102138    时间: 2013-8-16 12:10:20

factory 发表于 2013-8-16 12:07
不是用来搞笑的,VS行,怎么可能部署到服务器就不行》?你自己检查服务器上路径对不对?或者直接用绝对路径 ...

有没有提示错误消息?怎么提示?
作者: factory    时间: 2013-8-16 12:11:28

1640102138 发表于 2013-8-16 12:08
360 6.0版本,本地用VS 调试时也是用360 6.0版本,都没问题,就是发布到服务器后就是提示上传失败,哎… ...

上传失败就调试看看,看到底是前台还是后台的问题,是路径的问题还是哪里问题,上传控件我们是封装的swfupload,这个控件用的人很多,本身肯定是没有问题的。应该是你后台代码错误,或者路径错误
作者: 1640102138    时间: 2013-8-16 12:12:27

factory 发表于 2013-8-16 12:11
上传失败就调试看看,看到底是前台还是后台的问题,是路径的问题还是哪里问题,上传控件我们是封装的swfu ...

调试没问题,路径也没问题,获取的全是物理路径
作者: factory    时间: 2013-8-16 12:35:19

1640102138 发表于 2013-8-16 12:12
调试没问题,路径也没问题,获取的全是物理路径

你把我们的上传demo部署下试试,包括demo的前后台,看看能不能成功上传




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2