Member 12183079 Ответов: 1

Как использовать множественную загрузку файлов в двух элементах управления fileupload


$(document).ready1(function () {

        // up to 3 files can be selected

        // invoke plugin
        $('#ctl00_ContentPlaceHolder1_flpProspectus').MultiFile(5);

        // if you send in a number the plugin
        // will treat it as the file limit

    });
$(document).ready2(function () {

        // up to 3 files can be selected

        // invoke plugin
        $('#ctl00_ContentPlaceHolder1_flpEnquiry').MultiFile(5);

        // if you send in a number the plugin
        // will treat it as the file limit

    });

 <asp:FileUpload ID="flpProspectus" class="form-control"  runat="server"  Style="width: 50%; margin-top: -50px;float:left; margin-left:90%" />
<asp:FileUpload ID="flpEnquiry" class="form-control"  runat="server"  Style="width: 50%; margin-top: -50px;float:left; margin-left:90%" />


Код страницы Cs---
public void FileUpload1()
    {
        if (flpOrientation.HasFile)
        {
            string fileExtension = System.IO.Path.GetExtension(flpProspectus.FileName);
            int fileSize = flpProspectus.PostedFile.ContentLength;
            HttpFileCollection hfc = Request.Files;
            string[] arr = new string[5];
            for (int i = 0; i < hfc.Count; i++)
            {
                HttpPostedFile hpf = hfc[i];
                if (hpf.ContentLength > 0)
                {
                    hpf.SaveAs(Server.MapPath("~/college/fileupload3/") + System.IO.Path.GetFileName(hpf.FileName));
                    string filepath = Server.MapPath("~/college/fileupload3/");
                    string path = "college/fileupload3/" + hpf.FileName;
                    if (i < 5)
                    {
                        arr[i] = path;
                        path1 = arr[0]; path2 = arr[1]; path3 = arr[2]; path4 = arr[3]; path5 = arr[4];

                    }

                }
            }
        }
    }


Что я уже пробовал:

Выше я упоминаю код-
Я хочу знать, когда я просто выбираю файл из элемента управления FileUpload, он работает нормально
но когда я выбираю один файл из первого элемента управления файлом и один выбирает файл из второго элемента управления FileUpload то оба файла хранятся в одной папке и мое условие цикла работает для обоих элементов управления так как решить эту проблему когда я выбираю первый элемент управления FileUpload то мое условие цикла работает только первый элемент управления так что пожалуйста помогите мне-

Я использую код загрузки файла этой ссылки--

jQuery MultiFile v2. 2.1[^]

1 Ответов

Рейтинг:
0

Hassan Uddin Mughal

Если вы хотите получить несколько файлов из двух разных элементов управления FileUpload, а затем сохранить их в двух разных папках в одном событии нажатия кнопки. Вы можете использовать этот код очень легко...
HTML

<form id="form1" runat="server">
    <div class="uploadContainer">
        <asp:FileUpload ID="FileUpload1" runat="server" AllowMultiple="true" />
        <asp:Label ID="lblmessage1" runat="server" ForeColor="Red" />
        <br />
        <asp:FileUpload ID="FileUpload2" runat="server" AllowMultiple="true" />
        <asp:Label ID="lblmessage2" runat="server" ForeColor="Red" />
        <br />
        <asp:Button ID="btnUpload" runat="server" Text="Upload" OnClick="UploadMultipleFile_Click" />
        <br />
        
    </div>
    </form>


С#
 protected void UploadMultipleFile_Click(object sender, EventArgs e)
 {
 if (FileUpload1.HasFiles && FileUpload2.HasFiles)
        {
            foreach (HttpPostedFile postedFile in FileUpload1.PostedFiles)
            {
                lblmessage1.Text = string.Empty;
                string fileName = Path.GetFileName(postedFile.FileName);
                postedFile.SaveAs(Server.MapPath("~/Uploads1/") + fileName);
                lblmessage1.Text = FileUpload1.PostedFiles.Count + " files have been uploaded successfully.";
            }
          foreach (HttpPostedFile postedFile in FileUpload2.PostedFiles)
            {
                lblmessage2.Text = string.Empty;
                string fileName = Path.GetFileName(postedFile.FileName);
                postedFile.SaveAs(Server.MapPath("~/Uploads2/") + fileName);
                lblmessage2.Text = FileUpload1.PostedFiles.Count + " files have been uploaded successfully.";
            }
        }
        else
        {
            lblmessage1.Text = " ";
            lblmessage2.Text = " ";
        }
}


Member 12183079

Уважаемый господин
когда я пробую этот код, то получаю ошибку в hasfiles и PostedFiles, и я хочу построить путь в индексе массива, потому что я хочу передать столбец, где я сделал в таблице, так что Кинли мне поможет