Non fa propriamente un upload multiplo...
Semplicemente ti fa inserire le immagini una alla volta,
ne fa l'upload in una cartella a parte, ne crea il thumbnail
e lo aggiunge nella lista nella text area.
Solo quando tu clicchi su upload le immagini vengono
effettivamente pubblicate e quindi diventano visibili nel
fotoalbum... se ci ragioni un pochino vedi che ci riesci pure
tu a farlo e forse ti viene pure più bellino...
in tanto per darti una mano ti posto il codice per
effettuare un vero upload di "FILE" multiplo.
codice:
<%@ Page Language="C#" AutoEventWireup="True" Debug="true"%>
<%@ Import Namespace="System.IO" %>
<script Language="C#" runat="server">
protected void SubmitButton_Click(Object sender, EventArgs e)
{
string filepath = Server.MapPath("./");
string fileName = "";
HttpFileCollection uploadedFiles = Request.Files;
Status.Text = "";
for (int i = 0; i < uploadedFiles.Count; i++)
{
HttpPostedFile userPostedFile = uploadedFiles[i];
try
{
if (userPostedFile.ContentLength > 0)
{
fileName = Path.GetFileName(userPostedFile.FileName);
Status.Text += "<u><font color=\"red\">File #" + (i + 1) + "</font></u></br>";
Status.Text += "File Content Type: " + userPostedFile.ContentType + "</br>";
if (userPostedFile.ContentLength > 1024)
{
Status.Text += "File Size: " + ((double)(userPostedFile.ContentLength) / 1024.0).ToString("N3") + " kb</br>";
} // if (userPostedFile.ContentLength > 1024)
else
{
Status.Text += "File Size: " + userPostedFile.ContentLength + " bytes</br>";
} // if (userPostedFile.ContentLength > 1024) ... else ...
Status.Text += "File Name: " + userPostedFile.FileName + "</br>";
if (fileName.ToLower() != Path.GetFileName(Request.ServerVariables["PATH_TRANSLATED"]).ToLower())
{
userPostedFile.SaveAs(filepath + "\\" + Path.GetFileName(userPostedFile.FileName));
Status.Text += "Location where saved: " + filepath + Path.GetFileName(userPostedFile.FileName) + "</br>";
}
else
{
Status.Text += "<font color=\"red\">Error: It's prohibited upload a file called as this one!</font></br>";
}
} // if (userPostedFile.ContentLength > 0)
} // try
catch (Exception Ex)
{
Status.Text += "Error: </br>" + Ex.Message;
} // catch (Exception Ex)
} // for (int i = 0; i < uploadedFiles.Count; i++)
Status.Text += "<center></br><a href=\"" + Path.GetFileName(Request.ServerVariables["PATH_TRANSLATED"]) + "\" title=\"Back\" alt=\"Back\" style=\"text-decoration:none;\">Back to Index</a></br></center>";
} // protected void SubmitButton_Click(Object sender, EventArgs e)
</script>
<html>
<head>
</head>
<body>
Back to Index
<form enctype="multipart/form-data" runat="server"></br>
Select File1:
<input id="File1" type="file" runat="Server"/>
Select File2:
<input id="File2" type="file" runat="Server"/>
Select File3:
<input id="File3" type="file" runat="Server"/>
Select File4:
<input id="File4" type="file" runat="Server"/>
Select File5:
<input id="File5" type="file" runat="Server"/>
Select File6:
<input id="File6" type="file" runat="Server"/>
Select File7:
<input id="File7" type="file" runat="Server"/>
Select File8:
<input id="File8" type="file" runat="Server"/>
Select File9:
<input id="File9" type="file" runat="Server"/>
Select File10:
<input id="File10" type="file" runat="Server"/>
Select File11:
<input id="File11" type="file" runat="Server"/>
Select File12:
<input id="File12" type="file" runat="Server"/>
Select File13:
<input id="File13" type="file" runat="Server"/>
Select File14:
<input id="File14" type="file" runat="Server"/>
Select File15:
<input id="File15" type="file" runat="Server"/>
<input id="Submit1" type="submit" value="Upload Files" runat="Server" onserverclick="SubmitButton_Click"/>
<asp:Label id="Status" runat="server"></asp:Label>
</form>
</body>
</html>
Spero che ti serva ....