下载

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

PConline 2004-02-14 09:34:44
.net技术
  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=myReader("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("id="+cstr(id)+"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 id="FileInfo" Visible="False" runat="server">
  <Asp:Label id="FSize" runat="server"/><br>
  <Asp:Label id="FName" runat="server"/><br>
  <Asp:Label id="FDisplay" runat="server"/>
  <Asp:Label id="FDisplay1" runat="server"/>
  </Div>
  <Form Enctype="multipart/form-data" onsubmit="return guestbook_Validator(this)" runat="server">
  上传文件
  <Input Type="File" id="FileUp" runat="server" size="20"><br>
  图片属性:<input type="radio" value="<%=request.cookies("dgxyl").values("dgxylbj")%>" name="R1" checked>本班<input type="radio" value="全  校" name="R1">全校(本班则只在本班显示,全校则在全校显示)<P>
  图片说明:<br>
  <asp:TextBox id="TextBox1" runat="server" Width="233px" Height="141px">
  </asp:TextBox>
  <asp:RequiredFieldValidator id="RequiredFieldValidator1" runat="server" ControlToValidate="TextBox1" ErrorMessage="请输入图片说明">
  </asp:RequiredFieldValidator><br>
  <Asp:button id="Upload" OnClick="UploadFile" Text="上传图片" runat="server"/>
  </form>
  <Hr>
  <p>注意:</p>
  <ol>
  <li><b>严禁上传污染环境的照片,否则账号将被删除!</b></li>
  <li><font color="#808000"><b>请详细填写照片说明,图片说明不详细将会被视为乱传图片,将会被删除!</b></font></li>
  </ol>
  </Body>
  </Html>

打开太平洋知科技,阅读体验更佳
前往太平洋知科技APP查看原文,阅读体验更佳
继续评论
前往APP
制作海报

网友评论

写评论
APP内评论,得金币,兑好礼

聚超值推荐

相关推荐