当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: 我用的是jdk1.4.1_02版 有一个小问题请教高手 就是当我在用它编译一个工程的时候,该如何进行编译? 有很多文件是在不同的文件夹里边,请问该如何在jdk下边进行整个工程的编译~~ 我是在editplus下边整合的jdk 该如何编译。谢谢~~请不要灌水~~~~~~~ ......
 ·多个字段联合排序怎么做    »显示摘要«
    摘要: rt 例如有两个字段,a为字符型,b为数字型,显示时为a+b,如何同时对这两个字段排序? ......


重复问题,无组件上传附件到SQL数据库中与读取数据

由于我想做公文的上传下载附件功能,肯请大家帮个忙。  
  我想在一个ASP页面中嵌入上传附件,主要有以下功能:  
  1、可以浏览文件选择并上传。  
  2、有下拉框,可以上传多个文件,并在下拉框显示。  
  3、可以删除,选择下拉框内文件名,点击删除即删除。  
  另在另一页面内嵌入下载功能如下:  
  1、可以正常列出以上已经上传的文件列表并可以单击下载  
  2、可以像上面一样添加和删除文件,文件列表随着马上更新。  
  我真的累得已经不行了,前天有个CSDN好心人给我参考一篇文章,也是上传到数据中,但是却没有文件名如何入库,如何删除,我不知道如何写接口呀!  
  我真的希望好心网友能提供源代码或详细指点。谢谢!  
  好像是用Request.BinarryRead和Request.BinarryWrite

NO.1   作者: huaben

无组件图片与文本同步存入数据库的最简单的办法    
  动感教育网   发布日期:2001-7-17   字数:4798    
   
  一:前言  
   
  首先,没有料到图片与文本的上传会引起这么大的注意。上一篇贴子(Id=435906)贴出后,有不少人来信说看不懂。或  
  是仍然不能实现。我就以一种完全简单的手法。完成无组件的文本与图片上传数据库所有过程。希望能帮助所有对此有疑  
  问的网友。  
   
  二:准备工作  
   
  按照惯例,我先将我的测试环境告诉大家。  
  系统:Win98se   +   pws   +   asp    
  编程环境:Visual   Interdev   6.0    
  数据库:Access2000    
  建一个库:access2000中,先建好一个Test.mdb的数据库。具体有四个字段。  
  id   |   text1   |   text2   |   img  
  自动编号   文本   文本   OLE对象   ’如果是sql   server   则选择(image即可)  
   
  三:Are   you   ready   ,Go!!!  
   
  3-1.建上传表单:  
  我们知道,图像与文本是两种不同制式的文件而如果要同一表单提交的话,(file格式提交)则  
  我们获取时就不能用原来的方法request.form而必须用equest.TotalBytes来获得所有的提交资料。但这时两种格式的文件  
  混合在一起比较难分。我的上一贴已经告诉大家用二进制的方法来分开这些资料。但十分麻烦,要用到许多二进值的函  
  数,所以许多网友来信问我有没有更简单的方法,好。我可以告诉大家,有!而且保证下面的方法保证一学就会。  
   
  upload.asp(具体代码如下)  
   
  <%   @   language=vbscript   %>  
  <html>  
  <head>  
  <meta   name="VI60_defaultClientScript"   content="VBScript">  
  <title>   File   Upload   </title>  
  <script   ID="clientEventHandlersVBS"   LANGUAGE="vbscript">  
  <!--    
  Sub   form2_onsubmit   //**   这里是关键,当form2在提交的过程中时,即活form1的提交  
  form1.submit   //**所以我们这里用了两个表单,但只用一个提交就可以了。  
  End   Sub  
  -->  
  </script>  
  </head>  
  <body>  
   
  <form   name="form1"   ENCTYPE="multipart/form-data"   ACTION="upimage.asp"   METHOD="POST"   target="_blank">  
  Please   choose   a   picture   to   upload:   <br/>  
  <input   NAME="picture"   TYPE="FILE">   <br/>  
  </form>  
   
  <form   name="form2"   action="uptext.asp"   method="post">  
  <input   type="text"   name="text1"><br/>  
  <input   type="text"   name="text2"><br/>  
  <input   type="submit"   value="提交">  
  </form>  
   
  </body>  
  </html>  
   
  3-2   兵分两路来处理数据。  
  首先,文本很简单。  
   
  uptext.asp   (代码如下)  
   
  <%   @   language=vbscript   %>  
  <%  
  strconn="driver={microsoft   access   driver   (*.mdb)};dbq="&server.MapPath("test.mdb")  
   
  text1=request.form("text1")  
  text2=request.form("text2")  
  response.write   text1  
  response.write   text2  
   
  set   rs=Server.CreateObject("adodb.recordset")  
  sql="SELECT   top   1   *   FROM   imgtable   ORDER   BY   id   DESC"   ’这里的意思是选择最后一个Id,既刚刚被改动  
  rs.Open   sql,strconn,1,3   ’就是你上传的图像的两个文本字段。  
   
  rs("text1")=text1   ’注意,这里是改动不是添加,所以不用addnew。  
  rs("text2")=text2  
  rs.Update  
  rs.Close  
  %>  
  接着,来处理图像。  
  upimage.asp   (具体代码如下)  
   
  <%  
  FormSize   =   Request.TotalBytes   ’得到数据  
  FormData   =   Request.BinaryRead(   FormSize   )  
   
  function   ImageUp(formsize,formdata)   ’这个函数的功能是截取其中的图像部分。  
  bncrlf=chrb(13)   &   chrb(10)   ’做成函数后。以后你可以自己随意使用了。  
  divider=leftb(formdata,instrb(formdata,bncrlf)-1)  
  datastart=instrb(formdata,bncrlf&bncrlf)+4  
  dataend=instrb(datastart+1,formdata,divider)-datastart  
  imageup=midb(formdata,datastart,dataend)  
  end   function  
   
  Image=ImageUp   (FormSize,Formdata)   ’这里就是图像部分了。  
   
  set   rs=server.CreateObject("adodb.recordset")  
  strconn="driver={microsoft   access   driver   (*.mdb)};dbq="&server.MapPath("test.mdb")  
  sql="SELECT   *   FROM   imgtable"  
  rs.Open   sql,strconn,1,3  
   
  rs.AddNew   ’因为表单二在表单一提交的过程中下提交了。  
  rs("img").appendchunk   Image   ’所以这里是添加。  
  rs.Update  
  rs.Close  
   
   
  response.contenttype="image/gif"    
  response.binarywrite   imageup(formsize,formdata)   ’这里是显示图像。表示成功!  
   
  %>  
   
  啊?!?!原来如此简单!  
   
  四:“显示,我要同页显示”  
  终于完成了图文同步提交。  
  现在我们还要让他同页显示出来。其实,这是同样的思路。我们也用两页来完成。  
   
  主页面:show.asp  
   
  <%@   Language=VBScript   %>  
  <%    
  strconn="driver={microsoft   access   driver   (*.mdb)};dbq="&server.MapPath("test.mdb")  
   
  set   rs=Server.CreateObject("adodb.recordset")  
  sql="SELECT   top   1   *   FROM   imgtable   ORDER   BY   id   DESC"  
  rs.Open   sql,strconn,1,3  
  %>  
  <html>  
  <body>  
  以下是你的上传资料。<br/>  
  文本一:<%   Response.Write   rs("text1")   %><br/>  
  文本二:<%   Response.Write   rs("text2")   %><br/>  
   
  你的图像:  
  <img   src=showimg.asp?id=<%=rs("id")%>>   ’注意这里,这才是关键。他可以实现网页图像与文本  
  </body>   ’共存。    
  </html>  
   
  幕后页面:showimg.asp    
   
  <%@   Language=VBScript   %>  
  <%  
  strconn="driver={microsoft   access   driver   (*.mdb)};dbq="&server.MapPath("test.mdb")  
  id=Request("id")  
  set   rs=server.CreateObject("adodb.recordset")  
  sql="SELECT   *   FROM   imgtable   where   id="&id  
  rs.Open   sql,strconn,1,3  
  response.contenttype="image/gif"  
  Response.BinaryWrite   rs("img")  
  %>  
   
   
 

NO.2   作者: funboy88

http://www.5xsoft.com/data/200104/2822340301.htm  
   
   
  说明:  
   
  一直以来,由于FileSystemObject的局限,所以ASP最大的难题就是文件上传,大多解决法就是安装第三方上传组件。可第三方组件有很多问题,有的组件要注册,有的组件要在表单中加上他的版权信息。还有的就是组件的兼容问题。  
   
    在网上也流传了很多无组件上传的代码,但都是只能上传文本文件,或是只能将文件上传到数据库中。  
   
  我这段时间在研究ASP,发现可以不用第三方组件上传任意类型的文件。就写了这个类,给大家一个方便,整个类放在一个文件中:   upload_5xsoft.inc   在   Example   目录下还有一个完整的多文件上传示例程序,可以直接使用。  
 


    摘要: 初学者问:如何在同一台机器上的linux中访问windows2000中的文件? 请各位指教,不胜感激! ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE