当前位置:编程学习 > C#/ASP.NET >>

请各位帮心解决一个ASP.NET文件上传的问题

需求是这样的:
          表:create table images('img' text NOT NUOO default '')
          现在我有N个input来上传文件(动态的,点击添加上传文件,就要吧再增加上传一个文件),问题是我要把我上传的这N个文件的文件名,用分隔符分开,存入数据库images表的img字段,程序应该怎么写如:aa.jpg|bb.jpg|cc.jpg,望各们帮忙解决,谢谢.
产品图片:        
    <input type="file" size="50" name="File" />
    <input type="button" value="添加文件(Add)" onclick="addFile()" />
<script type="text/javascript">
      function addFile() {
          var div = document.createElement("div");
          var f = document.createElement("input");
          f.setAttribute("type", "file")
          f.setAttribute("name", "File")
          f.setAttribute("size", "50")
          div.appendChild(f)
          var d = document.createElement("input");
          d.setAttribute("type", "button")
          d.setAttribute("onclick", "deteFile(this)");
          d.setAttribute("value", "移除")
          div.appendChild(d)
          document.getElementById("_container").appendChild(div);
      }

      function deteFile(o) {
          while (o.tagName != "DIV") o = o.parentNode;
          o.parentNode.removeChild(o);
      }
  </script> --------------------编程问答-------------------- 你应该在.CS中取到上传的路径,截取到文件名,一起存放到一个string变量里面 --------------------编程问答-------------------- 你这JS跟 你取值无关,你要的是才CS里面代码操作 --------------------编程问答-------------------- 我试过还是不行,总是得到的是第一个文件名 --------------------编程问答--------------------
引用 2 楼 chai1338 的回复:
你这JS跟 你取值无关,你要的是才CS里面代码操作

能给我写份代码出来吗? --------------------编程问答-------------------- 遍历file --------------------编程问答-------------------- 我试过用数组来做,把每一个文件名,存入数组,然后再把数组连接起来 --------------------编程问答--------------------

 protected void UploadButton_Click(object sender, EventArgs e)
    {
        string url = "";
        ///'遍历File表单元素
        HttpFileCollection files = HttpContext.Current.Request.Files;

        /// '状态信息
        System.Text.StringBuilder strMsg = new System.Text.StringBuilder("您输入的用户名是:" + TextBox1.Text + "<br/>");
        strMsg.Append("上传的文件分别是:<hr color='red'/>");
       
            for (int iFile = 0; iFile < files.Count; iFile++)
            {
                ///'检查文件扩展名字
                HttpPostedFile postedFile = files[iFile];
                string fileName, fileExtension;
                fileName = System.IO.Path.GetFileName(postedFile.FileName);
                if (fileName != "")
                {
                    fileExtension = System.IO.Path.GetExtension(fileName);
                    strMsg.Append("上传的文件类型:" + postedFile.ContentType.ToString() + "<br>");
                    strMsg.Append("客户端文件地址:" + postedFile.FileName + "<br>");
                    strMsg.Append("上传文件的文件名:" + fileName + "<br>");
                    strMsg.Append("上传文件的扩展名:" + fileExtension + "<br><hr>");
                    ///'可根据扩展名字的不同保存到不同的文件夹
                    ///注意:可能要修改你的文件夹的匿名写入权限。
                    ///
                    string imgUrl = "admin/UpImage/" + fileName;

                    url += imgUrl + "|";

                    postedFile.SaveAs(System.Web.HttpContext.Current.Request.MapPath("~/admin/UpImage/") + fileName);
                }
            }
           
           
            Images img = new Images();
            img.Title = TextBox1.Text.Trim();
            img.ImgUrl = url.Substring(0, url.Length - 1);
            img.Degree = 0;
            img.Time = Convert.ToString(DateTime.Now.ToString("yyyy-MM-dd"));
            img.ImgType.Id = Convert.ToInt32(DropDownList1.SelectedValue);
            img.Content = FCKeditor1.Value;
            int index=url.IndexOf('|',0 );
            img.ShowImg=url.Substring(0, index);
            int i=ImagesManage.AddImages(img);
            if (i > 0)
            {
                DB();
                Response.Write("<script>alert('上传成功!');window.location='strat.aspx'</script>");
            }

            else
            {
                Response.Write("<script>alert('上传失败!');window.location='Error.aspx'</script>");
            }

      
    }
--------------------编程问答-------------------- 谢谢你,解决我的困惑! --------------------编程问答-------------------- 循环上传么

 用变量在追加文件名字。 --------------------编程问答-------------------- 经过chai1338的耐心解答,我现在已经解决了问题,感谢各位的热心帮助. --------------------编程问答--------------------
引用 10 楼 jfc159 的回复:
经过chai1338的耐心解答,我现在已经解决了问题,感谢各位的热心帮助.


- - 
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,