cuốn sách gpt4 ai đã làm

FileUpload tải lên các tập tin không mong muốn khi làm mới trang

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-03 18:34:07 27 4
mua khóa gpt4 Nike

Tôi đang sử dụng asp.net C# FIleUpload. Tôi đang gặp sự cố khi tôi tải hình ảnh lên và lưu trữ nó trong một thư mục được chỉ định, sau khi làm mới trang, hình ảnh sẽ được tải lên lại nhiều lần khi trang được làm mới. Tôi đã thử bật và tắt tùy chọn ViewState nhưng vấn đề tương tự vẫn tồn tại. Tôi đã mã hóa chức năng của mình để khi một hình ảnh được tải lên, nó sẽ ngay lập tức có một tên duy nhất để hình ảnh không bị ghi đè. Bất cứ ai có thể giải thích cách kiểm soát hành vi này để hình ảnh chỉ có thể được tải lên trên nút tải lên được chỉ định chứ không phải bằng cách làm mới trang. Dưới đây là mã chính tôi sử dụng:

protected void btnUpload_Click(người gửi đối tượng, EventArgs e)
{

if ((Phiên["Img1"] != null) && (Phiên["Img2"] != null) && (Phiên["Img3"] != null) && (Phiên["Img4"] != null))
{
lblUploadMsg.Text = "Bạn không thể tải lên nhiều hơn 4 ảnh";
return;
}
nếu (FileUpload1.HasFile)
{
chuỗi fileExtension = System.IO.Path.GetExtension(FileUpload1.FileName);
nếu (fileExtension.ToLower() == ".jpg")
{
int fileSize = FileUpload1.PostedFile.ContentLength;

nếu (FileUpload1.PostedFile.ContentLength < 2097152)
{

//FileUpload1.SaveAs(Server.MapPath("~/Temp/" + FileUpload1.FileName));
//Response.Write("Hoàn thành thành công");

chuỗi sp = Server.MapPath("~/ItemPictures/");
Chuỗi fn = Guid.NewGuid().ToString() + FileUpload1.FileName.Substring(FileUpload1.FileName.LastIndexOf("."));
if (sp.EndsWith("\\") == false)
sp += "\\";
sp += fn;
FileUpload1.PostedFile.SaveAs(sp);
lblUploadMsg.ForeColor = System.draw.Color.Green;
lblUploadMsg.Text = "Đã tải ảnh lên thành công. Bạn có thể tải lên tối đa 4 ảnh";
Aziz.InnerHtml += "Đã lưu hình ảnh\n";

if (Phiên ["Img1"] == null)
{
Phiên["Img1"] = "~/ItemPictures/" + fn;
}
khác nếu (Phiên ["Img2"] == null)
{
Phiên["Img2"] = "~/ItemPictures/" + fn;
}
khác nếu (Phiên ["Img3"] == null)
{
Phiên["Img3"] = "~/ItemPictures/" + fn;
}
khác nếu (Phiên ["Img4"] == null)
{
Phiên["Img4"] = "~/ItemPictures/" + fn;
}
}
khác
{
lblUploadMsg.Text = "Cho phép tập tin tối đa 2MB";
}
}
khác
{
lblUploadMsg.Text = "Chỉ cho phép tập tin JPG";
}
}
khác
{
lblUploadMsg.Text = "Không có tập tin nào được chọn";
}
ShowAvailblImgs();
}

khoảng trống riêng tư ShowAvailblImgs()
{
if (Phiên["Img1"] != null)
{
Image1.ImageUrl = (chuỗi)Phiên["img1"];
Hình ảnh1.Width = 130;
Hình1.Height = 130;
Image1.Visible = true;
}
khác
Image1.Visible = false;
if (Phiên["Img2"] != null)
{
Image2.ImageUrl = (chuỗi)Phiên["img2"];
Hình ảnh2.Width = 130;
Image2.Height = 130;
Image2.Visible = true;
}
khác
Image2.Visible = false;
if (Phiên["Img3"] != null)
{
Image3.ImageUrl = (chuỗi)Phiên["img3"];
Hình ảnh3.Width = 130;
Hình3.Chiều cao = 130;
Image3.Visible = true;
}
khác
Image3.Visible = false;
if (Phiên["Img4"] != null)
{
Image4.ImageUrl = (chuỗi)Phiên["img4"];
Hình ảnh4.Width = 130;
Image4.Height = 130;
Image4.Visible = true;
}
khác
Image4.Visible = false;
}

câu trả lời hay nhất

Bạn có thể khắc phục lỗi này bằng cách xóa giá trị của kiểm soát tải lên tệp sau lần gửi lại đầu tiên.

Hãy thử điều này:

FileUpload1.Attribut.Clear();

Về C# - FileUpload tải lên các tệp không mong muốn khi làm mới trang, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/17982897/

27 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress