asp.net上传图片保存到数据库的代码 |
本文标签:上传图片,数据库 数据库:保存图片的数据格式 图象二进制数据储存字段 前台: 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="UploadWork.aspx.cs" Inherits="meishuguan.UploadWork" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <style type="text/css"> .style1 { width: 100%; } .style2 { height: 25px; } </style> </head> <body> <script type="text/javascript"> function checkData() { var fileName = document.getElementById("UploadImage").value; alert(fileName); //var fileName = document.getElementsByName("UploadImage").value; if (fileName == "") return; var exName = fileName.substr(fileName.lastIndexOf(".") + 1).toUpperCase(); //alert(exName) if (exName == "JPG" || exName == "BMP" || exName == "GIF") { var imgpath = fileName.src; alert(imgpath); document.getElementById("PreviewImage").src = imgpath; document.write(fileName); } else { alert("请选择正确的图片文件") document.getElementById("PreviewImage").value = "" } } </script> <form method="post" runat="server"> <div> <table class="style1"> <tr> <td class="style2"> <asp:Label ID="MessageLabel" runat="server"></asp:Label> </td> <td class="style2"> </td> </tr> <tr> <td class="style2"> <input id="UploadImage" name = "UploadImage" type="file" runat="server" onchange="checkdata()" /> </td> <td class="style2"> <img id="PreviewImage" alt="" src="" style="height: 80px; width: 80px" /></td> </tr> <tr> <td> <asp:Button ID="UploadButton" runat="server" Text="确定" OnClick="UploadButton_Click" /> </td> <td> </td> </tr> </table> </div> </form> </body> </html> 后台: 复制代码 代码如下: using System; using System.Collections.Generic; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.IO; using System.Data.SqlClient; using System.Configuration; namespace meishuguan { public partial class UploadWork : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void UploadButton_Click(object sender, EventArgs e) { HttpPostedFile UpFile = UploadImage.PostedFile; int ImageLength = UpFile.ContentLength; if (ImageLength == 0) { MessageLabel.Text = "请选择要上传的图片"; return; } if (ImageLength > Int32.Parse(Application["MaxImageLength"].ToString())) { MessageLabel.Text = "图片大小不能大于2M"; return; } Stream ImageStream = UpFile.InputStream; Byte[] ImageByte = new Byte[ImageLength]; ImageStream.Read(ImageByte, 0, ImageLength); SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ToString()); string sqlstring = "insert into [Work](MID,image,length) values(@MID,@image,@length)"; SqlCommand command = new SqlCommand(sqlstring, connection); command.Parameters.Add("@MID", System.Data.SqlDbType.Int).Value = Session["MID"].ToString(); command.Parameters.Add("@image", System.Data.SqlDbType.Image, ImageLength).Value = ImageByte; command.Parameters.Add("@length", System.Data.SqlDbType.Int).Value = ImageLength; connection.Open(); command.ExecuteNonQuery(); connection.Close(); MessageLabel.Text = "图片上传成功"; } } } |