您的位置:首页 > 编程语言 > ASP

asp.net上传图片并同时生成缩略图[转]

2010-03-17 10:41 736 查看
asp.net上传图片并同时生成缩略图

                  
                  <script language="VB" runat="server">
                  Sub UploadFile(sender As Object, e As EventArgs)

                  If FileUp.PostedFile.ContentLength = 0 Then
                  FileInfo.Visible = False
                  Exit Sub
                  Else
                  FileInfo.Visible = True
                  FDisplay1.Visible = True
                  End If

                  FSize.Text ="上传文件大小"+
                  CStr(FileUp.PostedFile.ContentLength/1024)+"KB"
                  FName.Text =
                  "已上传文件名:"+FileUp.PostedFile.FileName+"<br>"+FName.Text

                  ’写入数据库
                  on error resume next
                  dim myconn as sqlconnection
                  dim mycomm as sqlcommand
                  dim sql as string
                  dim id as integer
                  Dim image,anewimage As System.Drawing.Image
                  dim width,height,newwidth,newheight as integer
                  Dim callb As System.Drawing.Image.GetThumbnailImageAbort
                  myConn=New
                  sqlconnection(ConfigurationSettings.AppSettings("数据库"))
                  myconn.open()
                  sql="insert into picture (姓名,班级,介绍,属性) values
                  (’"&request.cookies("dgxyl").values("dgxylname")&"’,’"&request.cookies("dgxyl").values("dgxylbj")&"’,’"&trim(request("TextBox1"))&"’,’"&request("r1")&"’)"

                  Mycomm=New sqlcommand(sql,myconn)
                  mycomm.executenonquery()
                  myconn.close()

                  Dim myCommand As New SqlCommand("select top 1 id from picture
                  order by id desc", myConn)
                  myCommand.Connection.Open()
                  Dim myReader As SqlDataReader=mycommand.executereader()
                  if myReader.Read() then
                  id")
                  end if
                  myconn.close()
                  ’保存图片
                  FileUp.PostedFile.SaveAs(
                  Server.MapPath("/classpic/")&cstr(id)&".jpg" )
                  ’生成缩略图
                  image=System.Drawing.Image.FromFile(Server.MapPath("/classpic/"+cstr(id)+".jpg"))

                  width=image.Width
                  height=image.height
                  if width>height then
                  newwidth=250
                  newheight=image.height/image.Width*newwidth
                  else
                  newheight=250
                  newwidth=image.Width/image.height*newheight
                  end if
                  response.write("width="+cstr(Width)+";height="+cstr(height)+"
                  ")
                  response.write("newwidth="+cstr(newwidth)+";newheight="+cstr(newheight)+"<br>")

                  aNewImage=image.GetThumbnailImage(newwidth,newheight,callb,new
                  System.IntPtr())
                  aNewImage.Save(Server.MapPath("/smallpic/"+cstr(id)+".jpg"))
                  image.Dispose()

                  Dim FileSplit() As String = Split( FileUp.PostedFile.FileName,
                  "/" )
                  Dim FileName As String = FileSplit(FileSplit.Length-1)
                  Dim Exts() As String = Split( FileName, "." )
                  Dim Ext As String = LCase(Exts(Exts.Length-1))

                  FDisplay.Text = "<A Target=’_blank’
                  HREF=’/classpic/"&cstr(id)&".jpg"& "’>查看上传文件</A>"
                  FDisplay1.text="<a
                  href=’/picture/default.asp?bj="&cstr(request.cookies("dgxyl").values("dgxylbj"))&"’>返回</a>"

                  End Sub
                  </script>
                  <SCRIPT language=JavaScript>
                  <!--
                  var requestsubmitted=false;
                  function guestbook_Validator(theForm)
                  {
                  //检查是否从新提交
                  if (requestsubmitted==true){
                  alert("你已经提交了留言,请等待服务器应答!");
                  return(false);
                  }
                  requestsubmitted=true;

                  return (true);
                  }
                  //-->
                  </SCRIPT>
                  <Html>
                  <Body BgColor=White>
                  <H3 align="center">请正确填写下面各项</h3>
                  <Hr></H3>
                  <Div Visible="False" runat="server">
                  <Asp:Label runat="server"/><br>
                  <Asp:Label runat="server"/><br>
                  <Asp:Label runat="server"/>
                  <Asp:Label runat="server"/>
                  </Div>
                  <Form Enctype="multipart/form-data"
                  guestbook_Validator(this)" runat="server">
                  上传文件
                  <Input Type="File" runat="server" size="20"><br>
                  图片属性:<input type="radio"
                  value="<%=request.cookies("dgxyl").values("dgxylbj")%>"
                  checked>本班<input type="rad
4000
io" value="全校"
                  >全校(本班则只在本班显示,全校则在全校显示)<P>
                  图片说明:<br>
                  <asp:TextBox runat="server" Width="233px"
                  Height="141px">
                  </asp:TextBox>
                  <asp:RequiredFieldValidator
                  runat="server" ControlToValidate="TextBox1"
                  ErrorMessage="请输入图片说明">
                  </asp:RequiredFieldValidator><br>
                  <Asp:button Text="上传图片"
                  runat="server"/>
                  </form>
                  <Hr>
                  <p>注意:</p>
                  <ol>
                  <li><b>严禁上传污染环境的照片,否则账号将被删除!</b></li>
                  <li><font
                  color="#808000"><b>请详细填写照片说明,图片说明不详细将会被视为乱传图片,将会被删除!</b></font></li>

                  </ol>
                  <p> </p>

                  </Body>
                  </Html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息