gpt4 book ai didi

c# - 如何使用 ajaxfileupload 上传多个文件并将它们插入数据库

转载 作者:行者123 更新时间:2023-11-30 20:56:38 24 4
gpt4 key购买 nike

我正在使用 AjaxFileUpload 控件上传多个图像文件。我正在做的是将文件保存到一个文件夹中,然后将其插入到数据库中。但是我收到上传错误。该文件既不会上传到文件夹中,也不会保存在表格中。

这是我的 aspx 代码:

 <div id="sliderinsert" style="position:absolute; padding-bottom:5px; background-color:gray; top: 24px; left: 13px; 
width: 695px; height: 300px; margin-bottom: 1px; overflow:visible">

<ajaxToolkit:AjaxFileUpload style="position:absolute; width:695px; overflow:auto;max-height:600px" MaximumNumberOfFiles="7" AllowedFileTypes="jpg,jpeg,png,gif"
id="ajaxUpload1" OnUploadComplete="ajaxUpload1_UploadComplete" runat="server" Width="633px"/>

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>

</div>

下面是我的代码:

protected void ajaxUpload1_UploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
{
id+=1;
string filename = Path.GetFileName(e.FileName);
string filepath = Server.MapPath("~/Images/Gallery/" + filename);
ajaxUpload1.SaveAs(filepath);

string Insert = "Insert into slider (slid,slurl) values (@id,@IMAGE_PATH)";
SqlCommand cmd = new SqlCommand(Insert, con);
cmd.Parameters.AddWithValue("@IMAGE_PATH", filepath);
cmd.Parameters.AddWithValue("id", id);
try
{
con.Open();
cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
Response.Write(ex.Message);
}
finally
{
con.Close();
cmd.Dispose();
}
}

在 PageLoad 事件中,我获取了表的 max(id),并在上传完成事件中递增它,然后将文件插入到表中。

谁能告诉我我在这里做错了什么。请帮我解决这个问题......

最佳答案


检查下面给定的代码:

protected void AjaxFileUpload1_UploadComplete1(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)<br>
{
string filepath = (Server.MapPath("~/Images/") +Guid.NewGuid()+ System.IO.Path.GetFileName(e.FileName));<br>
AjaxFileUpload1.SaveAs(filepath);<br>
string fl = filepath.Substring(filepath.LastIndexOf("\\"));<br>
string[] split = fl.Split('\\');<br>
string newpath = split[1];<br>
string imagepath = "~/Images/" + newpath;<br>
string Insert = "Insert into IMAGE_PATH (IMAGE_PATH) values (@IMAGE_PATH)";<br>
SqlCommand cmd = new SqlCommand(Insert, con);<br>
cmd.Parameters.AddWithValue("@IMAGE_PATH", newpath);<br>
con.Open();<br>
cmd.ExecuteNonQuery();<br>
con.Close();<br>
cmd.Dispose();<br>

}

关于c# - 如何使用 ajaxfileupload 上传多个文件并将它们插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17439684/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com