交流,学习,进步!

千里之行始于足下……
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

上传图片

Posted on 2007-11-27 12:54  xixi8820  阅读(235)  评论(0)    收藏  举报
 1<HTML>
 2    <HEAD>
 3        <title>UpLoad</title>
 4        <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
 5        <meta name="CODE_LANGUAGE" Content="C#">
 6        <meta name="vs_defaultClientScript" content="JavaScript">
 7        <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
 8        <base target="_self">
 9        <style type="text/css">
10            #myImg
11            {
12                filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);
13            }

14        
</style>
15        <script language="javascript">
16            
17        function viewfile()
18        {
19            //document.getElementById("myImg").src=document.getElementById("File1").value;
20            document.getElementById("myImg").filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = document.getElementById("File1").value;
21        }

22        
23        
</script>
24    </HEAD>
25    <body>
26        <form id="Form1" method="post" runat="server">
27            <TABLE id="Table1" cellSpacing="1" cellPadding="1" width="300" border="0">
28                <TR>
29                    <TD align="center" height="25">
30                        <asp:Image id="Image1" runat="server" ImageUrl="Images/load2.gif"></asp:Image>
31                    </TD>
32                </TR>
33                <TR>
34                    <TD align="center"><img width="80" height="80" alt="图标" id="myImg" >
35                    </TD>
36                </TR>
37                <TR>
38                    <TD align="center"><INPUT id="File1" type="file" name="File1" runat="server" onpropertychange="viewfile();"></TD>
39                </TR>
40                <TR>
41                    <TD align="center">
42                        <asp:Button id="btnUpLoad" runat="server" Text="上传" CssClass="ckpUp"></asp:Button></TD>
43                </TR>
44            </TABLE>
45        </form>
46    </body>
47</HTML>

后台代码:
  1using System;
  2using System.Collections;
  3using System.ComponentModel;
  4using System.Data;
  5using System.Drawing;
  6using System.Web;
  7using System.Text;
  8using System.Web.SessionState;
  9using System.Web.UI;
 10using System.Web.UI.WebControls;
 11using System.Web.UI.HtmlControls;
 12using System.IO;//引用File类时用到
 13
 14namespace aaaaaaaaaaaaa
 15{
 16    /// <summary>
 17    /// UpLoad 的摘要说明。
 18    /// </summary>

 19    public class UpLoad : System.Web.UI.Page
 20    {
 21        protected System.Web.UI.WebControls.Image Image1;
 22        protected System.Web.UI.WebControls.Button btnUpLoad;
 23        protected System.Web.UI.HtmlControls.HtmlInputFile File1;
 24    
 25        private void Page_Load(object sender, System.EventArgs e)
 26        {
 27            // 在此处放置用户代码以初始化页面
 28            
 29            if(!IsPostBack)
 30            {
 31                this.Image1.Visible=false;
 32            }

 33
 34        }

 35
 36        //关闭并刷新父窗口
 37        public static void CloseWin(string url)
 38        {
 39            StringBuilder str = new StringBuilder();
 40            str.Append("<script language=javascript>");
 41            str.Append("var e = (window.parent.opener == undefined) ? dialogArguments : window.parent.opener.document;");
 42            str.Append("e.location='" + url + "';");
 43            str.Append("window.close();");
 44            str.Append("</script>");
 45
 46            HttpContext.Current.Response.Write(str.ToString());
 47        }

 48
 49        Web 窗体设计器生成的代码
 70
 71        private void btnUpLoad_Click(object sender, System.EventArgs e)
 72        {
 73            string Sourcefile = this.File1.Value;
 74            if(Sourcefile=="")
 75            {
 76                Response.Write("<script>alert('请选择图片文件')</script>");
 77            }

 78            else
 79            {
 80                string fileExtName = Sourcefile.Substring(Sourcefile.LastIndexOf(".")+1,3);//取扩展名
 81
 82                if(fileExtName.ToLower() !="jpg" )//本程序暂用jpg格式
 83                {
 84                    Response.Write("请选择格式为jpg的图片文件");
 85                }

 86                else
 87                {
 88                    string ImgServerPath = Server.MapPath(".")+"/Images/UpLoad/";
 89                    string ImgServerName = "lib_"+Request.QueryString["ID"]+"."+fileExtName.ToLower();
 90
 91                    if (Request.Files.Count > 0)
 92                    {
 93                        if (Request.Files[0].FileName!="")
 94                        {
 95                            string ServerFullPath=ImgServerPath+ImgServerName;
 96                            
 97                            try
 98                            {
 99                                
100                                this.Image1.Visible=true;
101                                //删除原有图像
102                                File.Delete(ImgServerPath+"lib_"+Request.QueryString["ID"]+".jpg");
103
104                                Request.Files[0].SaveAs(ServerFullPath);
105                            }

106                            catch(System.Exception ex)
107                            {                        
108                                Response.Write("<script>alert('上传失败,文件不存在或权限不能访问!');</script>");
109                                return;
110                            }

111                            this.Image1.Visible=false;
112
113                            CloseWin("aaaa.aspx?id="+Request.QueryString["ID"].ToString());
114                        }

115                    }

116                }

117            }

118        }

119    }

120}

121