Asp.net圖片上傳access數據庫以及圖片顯示;點擊圖片以後顯示[圖片,以及圖片的

Access數據庫:在數據庫建立一個pic(id設爲主鍵[自動編號],)的表,(pic_name[備註])用於存儲上傳圖片的名字.[此博客全部程序都通過windowds 2003和vs2005測試]
Upload.aspx
<form id="form1" method="post" enctype="multipart/form-data" runat="server">     <div>         <asp:FileUpload ID="FileUpload1" runat="server" />&nbsp;<asp:Button ID="Button1"             runat="server" OnClick="Button1_Click" Text="Button" /><br />         <br />         <asp:Image ID="Image1" runat="server" /><br />         <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label><br />         </div>     </form>
upload.cs
protected void Page_Load(object sender, EventArgs e)     {          }     protected void Button1_Click(object sender, EventArgs e)     {         string name = FileUpload1.FileName;//獲取已上傳的文件的名字         string size = FileUpload1.PostedFile.ContentLength.ToString();//獲取已上傳文件的大小         string type = FileUpload1.PostedFile.ContentType;//獲取已上傳文件mime內容類型         string type2 = name.Substring(name.LastIndexOf(".")+1);//得到文件的後綴名         string ipath = Server.MapPath("upimg") + "//" + name;//獲取文件上傳的實際路徑         string fpath = Server.MapPath("upfile") + "//" + name;//獲取文件上傳的實際路徑         string wpath = "upimg//" + name;//寫到文件的虛擬路徑
        //判斷文件格式         if (type2 == "jpg" || type2 == "gif")         {             FileUpload1.SaveAs(ipath);//將文件保存到path路徑裏面             Image1.ImageUrl = wpath;//顯示圖片             Label1.Text = "文件名稱:" + name + "<br>文件大小:" + size + "文字<br>文件類型是:" + type + "<br>後綴名" + type2 + "<br>實際路徑" + ipath + "<br>虛擬路徑:" + wpath;             //把圖片名字存到數據庫裏面             //定義連接數據庫對象             string conn = "provider=Microsoft.Jet.OLEDB.4.0;Data source=" + Server.MapPath("../App_Data/data.mdb");             OleDbConnection oleConnection = new OleDbConnection(conn);             oleConnection.Open();             OleDbCommand myCommand = new OleDbCommand("insert into pic (pic_name) values ('"+ name+"')", oleConnection);             myCommand.ExecuteNonQuery();             oleConnection.Close();
        }         else         {             Image1.Visible = false;//將圖片控件隱藏             FileUpload1.SaveAs(fpath);//將文件保存到別的文件夾             Label1.Text = "文件名稱:" + name + "<br>文件大小:" + size + "文字<br>文件類型是:" + type + "<br>後綴名" + type2 + "<br>實際路徑" + ipath + "<br>虛擬路徑:" + wpath;         }     }
 
Image_show.aspx(用於顯示上傳以後圖片的的頁面)
<form id="form1" runat="server">     <div>         <asp:DataList ID="DataList1" runat="server" Font-Bold="False" Font-Italic="False"             Font-Overline="False" Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Left"             RepeatDirection="Horizontal">             <ItemTemplate>             <a href="pro_show.aspx?id=<%# DataBinder.Eval(Container.DataItem,"id") %>">                 <img border="0" src="admin/upimg/<%# DataBinder.Eval(Container.DataItem,"pic_name") %>" />             </a>             </ItemTemplate>         </asp:DataList></div>     </form>
Image_show.aspx(cs)
protected void Page_Load(object sender, EventArgs e)     {         //創建連接數據庫字符串         string conn = "provider=Microsoft.Jet.OLEDB.4.0;Data source=" + Server.MapPath("App_Data/test.mdb");         OleDbConnection oleConnection = new OleDbConnection(conn);         try         {             //打開數據庫連接             oleConnection.Open();             OleDbCommand cmd = new OleDbCommand("select * from pic", oleConnection);             OleDbDataAdapter dpt = new OleDbDataAdapter(cmd);             DataSet ds = new DataSet();             dpt.Fill(ds);             DataList1.DataSource = ds;             DataList1.DataBind();         }         finally         {             //關閉數據庫             oleConnection.Close();         }     }
pro_show.aspx(點擊圖片以後,顯示圖片以及文字介紹)
<form id="form1" runat="server">     <div>         <asp:Label ID="Label1" runat="server" Text="Label" Width="142px"></asp:Label><asp:DataList ID="DataList1" runat="server">             <ItemTemplate>                  <img border="0" src="admin/upimg/<%# DataBinder.Eval(Container.DataItem,"pic_name") %>" />             </ItemTemplate>         </asp:DataList></div>     </form>
pro_show.cs
protected void Page_Load(object sender, EventArgs e)     {         string AuthorID = Request["id"].ToString();         //創建連接數據庫字符串         string conn = "provider=Microsoft.Jet.OLEDB.4.0;Data source=" + Server.MapPath("App_Data/test.mdb");         OleDbConnection oleConnection = new OleDbConnection(conn);
        OleDbCommand cmd = new OleDbCommand("select * from pic where [id]=" + AuthorID, oleConnection);         //打開數據庫連接         oleConnection.Open();         try         {             OleDbDataAdapter dpt = new OleDbDataAdapter(cmd);             DataSet ds = new DataSet();             dpt.Fill(ds);             DataList1.DataSource = ds;             DataList1.DataBind();
            OleDbDataReader dr = cmd.ExecuteReader();             if (dr.Read())             {                 Label1.Text = dr["introduced"].ToString();             }
        }         catch (Exception error)         {             Response.Write(error.ToString());         }         finally         {             oleConnection.Close();         }
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章