ASP.NET(C#)实现一次性上传多张图片(多个文件)

摘要:
BR>P id=“MyFile”>INPUT onclick=“addFile()”type=“button”value=“Add picture”>是对应图片字符串albumid=ddlAlbum的描述。选择的值。修剪();files.Count;

在做asp.net的Web开发的时候,我们经常会遇到一次性上传多个文件的需求。通常我们的解决方法是固定放多个上传文件框,这样的解决办法显然是不合理的,因为一次上传多个,就意味着数量不确定。因此我们就要让这些文件上传框动态添加,下面我以我做的一个图库管理中的上传图片的功能为例

先看效果:
打开的初始界面:
ASP.NET(C#)实现一次性上传多张图片(多个文件)第1张

默认是上传一个图片,但当我们点“增加图片”按钮时可以实现选择多个图片及其描述同时上传,本功能限制一次最多只能上传8张,且每张图片大小不超过1M,这个大家可根据实际情况更改!
如图:
ASP.NET(C#)实现一次性上传多张图片(多个文件)第2张

下面来看实现过程:

第一步,使用javascript代码实现动态添加文件上传框和描述文本框,关键代码如下:

ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张<script type="text/javascript">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张        
var i=1
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张        
function addFile()
ASP.NET(C#)实现一次性上传多张图片(多个文件)第6张ASP.NET(C#)实现一次性上传多张图片(多个文件)第7张        
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张     
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张         
if (i<8)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张            
...{var str = '<BR> <input type="file" name="File" runat="server"  />描述:<input name="text" type="text" style=" 150px" maxlength="20" />'
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            document.getElementById(
'MyFile').insertAdjacentHTML("beforeEnd",str)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张            }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
else
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张            
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                alert(
"您一次最多只能上传8张图片!")
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张            }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            i
++
ASP.NET(C#)实现一次性上传多张图片(多个文件)第21张        }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张        
</script>
HTML调用代码为:
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张<id="MyFile"><INPUT onclick="addFile()" type="button" value="增加图片(Add)"><br />
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    
<input type="file" name="File" runat="server" style=" 300px"/>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    描述:
<input name="text" type="text" style=" 150px" maxlength="20" />


第二步:服务器端代码实现
就上传单个文件或图片来说,使最普通不 过的了,但是对于这样的一次性上传多个文件以及它们相应的描述的问题,就要费点周折

    首先,通过System.Web.HttpContext.Current.Request.Files方法获取客户端的文件集合,然后通过Request.Form方法获得描述文本框集合,最后利用一个循环将文件上传,并将相应的信息保存到数据库
关键代码如下:

ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张System.Web.HttpFileCollection files = System.Web.HttpContext.Current.Request.Files;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张        
string[] rd = Request.Form[1].Split(',');//获得图片描述的文本框字符串数组,为对应的图片的描述
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
        string albumid=ddlAlbum.SelectedValue.Trim();
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张        
int ifile;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张        
for (ifile = 0; ifile < files.Count; ifile++)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第6张ASP.NET(C#)实现一次性上传多张图片(多个文件)第7张        
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            
if (files[ifile].FileName.Length > 0)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张            
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                      ..........................  
//上传单个文件并保存相关信息
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张
             }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第21张         }

最后给出上述功能的全部代码:

HTML代码:

ASP.NET(C#)实现一次性上传多张图片(多个文件)第6张ASP.NET(C#)实现一次性上传多张图片(多个文件)第7张<%...@ Page Language="C#" AutoEventWireup="true" CodeFile="UploadImg.aspx.cs" Inherits="NetAdmin_APicture_UploadImg" %>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
<html xmlns="http://www.w3.org/1999/xhtml" >
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
<head runat="server">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张    
<title>无标题页</title>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第6张ASP.NET(C#)实现一次性上传多张图片(多个文件)第7张        
<script type="text/javascript">...
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
var i=1
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
function addFile()
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张        
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张     
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张         
if (i<8)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张            
...{var str = '<BR> <input type="file" name="File" runat="server"  />描述:<input name="text" type="text" style=" 150px" maxlength="20" />'
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            document.getElementById(
'MyFile').insertAdjacentHTML("beforeEnd",str)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张            }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
else
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张            
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                alert(
"您一次最多只能上传8张图片!")
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张            }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            i
++
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张        }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第21张        
</script>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张    
<link href="../../NetAdmin/Site.Css" rel="stylesheet" type="text/css" />
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
</head>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
<body style="background-image: url(../images/bg.jpg); text-align: center">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张    
<form id="form1" runat="server">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张    
<div>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张        
<table id="Table1" align="center" border="0" cellpadding="1" cellspacing="1" class="table"
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            style
="height: 58px" width="620">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                
<td align="center" background="../images/topbg1.jpg">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                    
<font color="#0000ff" face="宋体" size="3"><strong>上传图片</strong></font></td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                
<td align="center">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                    
&nbsp;</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                
<td align="center">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                    
<asp:Panel ID="Panel5" runat="server" Width="608px">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                        
&nbsp; &nbsp;<table width="100%">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="right" style=" 100px">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="left">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    说明:点增加图片按钮可一次上传多张图片,可为每张图片写上一句不超过20个字的描述。单张图片大小不大于1024k
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="right" style=" 100px">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    请选择图片:
<br />
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="left"><id="MyFile"><INPUT onclick="addFile()" type="button" value="增加图片(Add)"><br />
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    
<input type="file" name="File" runat="server" style=" 300px"/>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    描述:
<input name="text" type="text" style=" 150px" maxlength="20" />
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="right" style=" 100px">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    上传到的图库:
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="left">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    
<asp:DropDownList ID="ddlAlbum" runat="server" DataSourceID="SqlDataSource1"
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                        DataTextField
="AlbumName" DataValueField="AlbumID">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    
</asp:DropDownList><asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:WebJakeCS %>"
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                        SelectCommand
="SELECT [AlbumID], [AlbumName] FROM [WB_Album] ORDER BY [AlbumID] DESC">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    
</asp:SqlDataSource>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="right" style=" 100px">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="left">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    
<asp:Button ID="btnUpload" runat="server" Text="开始上传" OnClick="btnUpload_Click" />
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="right" style=" 100px">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                
<td align="left">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                                    
<asp:Label ID="lblMessage" runat="server" Font-Bold="True" ForeColor="Red"></asp:Label></td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                        
</table>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                    
</asp:Panel>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                    
&nbsp;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                
<td align="center">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                    
<font face="宋体"></font><font face="宋体">&nbsp;</font>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
<tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                
<td align="center">
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                    
<font face="宋体"></font>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张                
</td>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张            
</tr>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张        
</table>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张    
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张    
</div>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张    
</form>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
</body>
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
</html>

后台代码:
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张using System;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Data;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Configuration;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Collections;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Web;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Web.Security;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Web.UI;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Web.UI.WebControls;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Web.UI.WebControls.WebParts;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.Web.UI.HtmlControls;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
using System.IO;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张
public partial class NetAdmin_APicture_UploadImg : System.Web.UI.Page
ASP.NET(C#)实现一次性上传多张图片(多个文件)第6张ASP.NET(C#)实现一次性上传多张图片(多个文件)第7张
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张    
protected void Page_Load(object sender, EventArgs e)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张    
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张    }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张   
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张    
protected void btnUpload_Click(object sender, EventArgs e)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张    
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        lblMessage.Text 
= "";
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        lblMessage.Visible 
= false;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        System.Web.HttpFileCollection files 
= System.Web.HttpContext.Current.Request.Files;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        System.Text.StringBuilder strmsg 
= new System.Text.StringBuilder("");
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
string[] rd = Request.Form[1].Split(',');//获得图片描述的文本框字符串数组,为对应的图片的描述
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张
        string albumid=ddlAlbum.SelectedValue.Trim();
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
int ifile;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
for (ifile = 0; ifile < files.Count; ifile++)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张        
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            
if (files[ifile].FileName.Length > 0)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张            
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                System.Web.HttpPostedFile postedfile 
= files[ifile];
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                
if (postedfile.ContentLength / 1024 > 1024)//单个文件不能大于1024k
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张
                ...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    strmsg.Append(Path.GetFileName(postedfile.FileName) 
+ "---不能大于1024k<br>");
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    
break;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张                }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                
string fex = Path.GetExtension(postedfile.FileName);
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                
if (fex != ".jpg" && fex != ".JPG" && fex != ".gif" && fex != ".GIF")
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张                
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    strmsg.Append(Path.GetFileName(postedfile.FileName) 
+ "---图片格式不对,只能是jpg或gif<br>");
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    
break;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张                }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张            }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张        }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
if (strmsg.Length <= 0)//说明图片大小和格式都没问题
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张
        ...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            
//以下为创建图库目录
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张
            string dirname = "pic00" + ddlAlbum.SelectedValue.Trim();
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            
string dirpath = Server.MapPath("../../PicBase");
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            dirpath 
= dirpath + "\" + dirname;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            
if (Directory.Exists(dirpath) == false)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张            
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                Directory.CreateDirectory(dirpath);
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张            }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            Random ro 
= new Random();
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            
int name = 1;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            
for (int i = 0; i < files.Count; i++)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张            
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                System.Web.HttpPostedFile myFile 
= files[i];
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                
string FileName = "";
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                
string FileExtention = "";
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                
string PicPath = "";
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                FileName 
= System.IO.Path.GetFileName(myFile.FileName);  
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                
string stro=ro.Next(100,100000000).ToString()+name.ToString();//产生一个随机数用于新命名的图片
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张
                string NewName =DateTime.Now.Minute.ToString() + DateTime.Now.Second.ToString()+DateTime.Now.Millisecond.ToString()+stro;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                
if (FileName.Length > 0)//有文件才执行上传操作再保存到数据库
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张
                ...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    FileExtention 
= System.IO.Path.GetExtension(myFile.FileName);
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    
string ppath = dirpath + "\" + NewName + FileExtention;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    myFile.SaveAs(ppath);
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    
string FJname = FileName;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    PicPath 
= "PicBase" + "\" + dirname + "\" + NewName + FileExtention;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                   
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张                }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                AddPicture(PicPath, rd[i], albumid);
//将图片信息保存到数据库
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张
                if (name == 1)//如果为每次更新的第一张图片,则将它更新为象册的封面
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张
                ...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                    upFirstimg(albumid, PicPath);
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张                }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张                name 
= name + 1;//用来重命名规则的变量
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张
                
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张            }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张        }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
else
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张        
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            lblMessage.Text 
= strmsg.ToString();
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张            lblMessage.Visible 
= true;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张        }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张    }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张    
private void AddPicture(string imgpath,string imgnote,string albumid)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张    
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
string sql = "insert WB_AlbumImges(ImgPath,ImgNote,AlbumID) values('"+imgpath+"','"+imgnote+"','"+albumid+"')";
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        DB mydb 
= new DB();
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        mydb.RunProc(sql);
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张    }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张    
private void upFirstimg(string albumid,string firstimg)
ASP.NET(C#)实现一次性上传多张图片(多个文件)第10张ASP.NET(C#)实现一次性上传多张图片(多个文件)第11张    
...{
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        
string sql = "update WB_Album set FirstImg='"+firstimg+"' where AlbumID="+albumid;
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        DB mydb 
= new DB();
ASP.NET(C#)实现一次性上传多张图片(多个文件)第8张        mydb.RunProc(sql);
ASP.NET(C#)实现一次性上传多张图片(多个文件)第14张    }

ASP.NET(C#)实现一次性上传多张图片(多个文件)第21张}

ASP.NET(C#)实现一次性上传多张图片(多个文件)第3张

免责声明:文章转载自《ASP.NET(C#)实现一次性上传多张图片(多个文件)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇viewport的深入调研windows-关于windows更新机制的总结下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

css hover伪类选择器与JQuery hover()方法

css hover伪类选择器 它属于anchor伪类 在支持 CSS 的浏览器中,<a>标签链接的不同状态都可以以不同的方式显示,常常用来改链接的颜色效果 实例 a:link{color:#FF0000;}/* 未访问的链接 */ a:visited{color:#00FF00;}/* 已访问的链接 */ a:hover{color:#FF...

[OpenCVsharp]利用指针实现高速访问像素RGB值

先简单介绍下什么是OpenCVsharp,内容取自百度百科 OpenCvSharp是一个OpenCV的.Net wrapper,应用最新的OpenCV库开发,使用习惯比EmguCV更接近原始的OpenCV,有详细的使用样例供参考。该库采用LGPL发行,对商业应用友好。使用OpenCvSharp,可用C#,VB.NET等语言实现多种流行的图像处理(image...

时间戳(Unix时间)

/// <summary> /// 时间戳与DateTime互转 /// </summary> public class UnixOfTimeHelper { /// <summary> /// 时间转unix时间戳 /// &...

Visual Studio Code前端Vue开发工具VS Code与调试

vscode安装 进入vscode官网(https://code.visualstudio.com/Download)vscode插件安装进入vscode官网插件商店(https://marketplace.visualstudio.com/VSCode) 安装Vetur插件,点击install,会启动vscodevue相关插件vetur 语法高亮、智能感...

用gdb调试nasm汇编程序

用gdb调试nasm汇编程序 对于一个程序员来说,调试是很重要的,可以节约找到bug的时间,不过以前在linux下一直是对c进行调试的,今天突然要对汇编进行调试还真不知道怎么调,特别是对linux下调试汇编程序基本没搞过。记得以前上课学masm时,用的是debug,貌似映像中对汇编挺难调试的。于是就在网上查了下在linux下调试nasm汇编程序的资料,看起...

1.MyBatis所需要的配置文件

一、Mybatis介绍      MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old Java Objects,普通的Java对象)映射成数据库...