CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  ASP

asp!怎么利用表单把文件从客户端传到服务器上,show me 原代码,给分

楼主zzy_ayi(MFX)2002-09-24 11:56:48 在 Web 开发 / ASP 提问

怎么利用表单把文件从客户端传到服务器上,show   me   原代码,给分 问题点数:50、回复次数:5Top

1 楼flashasp(flashasp)回复于 2002-09-24 12:02:21 得分 50

文件夹名称:  
  upload:[upload0.asp,upp.asp,uploadx.asp,imag:存放上传的图片/文件的文件夹]  
   
  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  
  upload0.asp  
  <form   method="POST"   action="upp.asp"   enctype="multipart/form-data"   >  
      <p>   photo:          
          <input   type="file"   name="fruit"   size="20">  
  <!--要同时上传多个文件就把上面的代码:<input   type="file"   name="fruit"   size="20">多复制几次呵呵-->    
          <input   type="submit"   value="upload"   name="subbutt">        
          <input   type="reset"   value="reset"   name="rebutt">        
  </form>     <%=request("file")%>  
       
     
  </html>      
  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@               upp.asp  
  <%@   LANGUAGE   =   VBScript   %>  
  <%Server.ScriptTimeOut=100000   %>//设置上传文件的最大运行时间  
  <!--   #include   file="uploadx.asp"   -->  
  <%  
  dim   filename  
  path   =   Server.MapPath("./imag/")  
  filename   =   SaveFile("fruit",path,6000,0)//设置上传文件的最大上限  
    If   filename<>""   Then    
  If   filename   <>   "*TooBig*"   Then  
          Response.redirect   "upload0.asp?message="&   filename   &"   "  
  Else  
  Response.redirect   "upload0.asp?message=文件超出限制太大(<=6000K)"  
  End   IF  
  End   IF  
  %>  
   
  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@             uploadx.asp  
   
  <%  
  Dim   FormData,   FormSize,   Divider,   bCrLf  
  FormSize   =   Request.TotalBytes  
  FormData   =   Request.BinaryRead(FormSize)  
  bCrLf   =   ChrB(13)   &   ChrB(10)  
  Divider   =   LeftB(FormData,   InStrB(FormData,   bCrLf)   -   1)  
  Function   SaveFile(FormFileField,   Path,   MaxSize,   SavType)  
          Dim   StreamObj,StreamObj1  
          Set   StreamObj   =   Server.CreateObject("ADODB.Stream")  
          Set   StreamObj1   =   Server.CreateObject("ADODB.Stream")  
          StreamObj.Mode   =   3  
          StreamObj1.Mode   =   3  
          StreamObj.Type   =   1  
          StreamObj1.Type   =   1  
          SaveFile   =   ""  
          StartPos   =   LenB(Divider)   +   2  
          FormFileField   =   Chr(34)   &   FormFileField   &   Chr(34)  
          If   Right(Path,1)   <>   "\"   Then  
                  Path   =   Path   &   "\"  
          End   If  
          Do   While   StartPos   >   0  
                  strlen   =   InStrB(StartPos,   FormData,   bCrLf)   -   StartPos  
                  SearchStr   =   MidB(FormData,   StartPos,   strlen)  
                  If   InStr(bin2str(SearchStr),   FormFileField)   >   0   Then  
                          FileName   =   bin2str(GetFileName(SearchStr,path,SavType))  
                          If   FileName   <>   ""   Then  
                                  FileStart   =   InStrB(StartPos,   FormData,   bCrLf   &   bCrLf)   +   4  
                                  FileLen   =   InStrB(StartPos,   FormData,   Divider)   -   2   -   FileStart  
                                  If   FileLen   <=   MaxSize*1024   Then  
                                                FileContent   =   MidB(FormData,   FileStart,   FileLen)  
                                          StreamObj.Open  
                                          StreamObj1.Open  
                                          StreamObj.Write   FormData  
                                          StreamObj.Position=FileStart-1  
                                          StreamObj.CopyTo   StreamObj1,FileLen  
                                          If   SavType   =0   Then  
                                                  SavType   =   1  
                                          End   If    
                                          StreamObj1.SaveToFile   Path   &   FileName,   SavType  
                                          StreamObj.Close  
                                          StreamObj1.Close  
                                          If   SaveFile   <>   ""   Then  
                                                  SaveFile   =   SaveFile   &   ","     &   FileName  
                                          Else  
                                                  SaveFile   =   FileName  
                                          End   If  
                                  Else  
                                          If   SaveFile   <>   ""   Then  
                                                  SaveFile   =   SaveFile   &   ",*TooBig*"  
                                          Else  
                                                  SaveFile   =   "*TooBig*"  
                                          End   If  
                                  End   If  
                          End   If  
                  End   If  
                  If   InStrB(StartPos,   FormData,   Divider)   <   1   Then  
                          Exit   Do  
                  End   If  
                  StartPos   =   InStrB(StartPos,   FormData,   Divider)   +   LenB(Divider)   +   2  
          Loop  
  End   Function  
   
  Function   GetFormVal(FormName)  
          GetFormVal   =   ""  
          StartPos   =   LenB(Divider)   +   2  
          FormName   =   Chr(34)   &   FormName   &   Chr(34)  
          Do   While   StartPos   >   0  
                  strlen   =   InStrB(StartPos,   FormData,   bCrLf)   -   StartPos  
                  SearchStr   =   MidB(FormData,   StartPos,   strlen)  
                  If   InStr(bin2str(SearchStr),   FormName)   >   0   Then  
                                ValStart   =   InStrB(StartPos,   FormData,   bCrLf   &   bCrLf)   +   4  
                                ValLen   =   InStrB(StartPos,   FormData,   Divider)   -   2   -   ValStart  
                                      ValContent   =   MidB(FormData,   ValStart,   ValLen)  
                                If   GetFormVal   <>   ""   Then  
                                  GetFormVal   =   GetFormVal   &   ","   &   bin2str(ValContent)  
                          Else  
                                  GetFormVal   =   bin2str(ValContent)  
                          End   If  
                  End   If  
                  If   InStrB(StartPos,   FormData,   Divider)   <   1   Then  
                          Exit   Do  
                  End   If  
                  StartPos   =   InStrB(StartPos,   FormData,   Divider)   +   LenB(Divider)   +   2  
          Loop  
  End   Function  
   
  Function   bin2str(binstr)  
        Dim   varlen,   clow,   ccc,   skipflag  
        skipflag   =   0  
        ccc   =   ""  
        varlen   =   LenB(binstr)  
        For   i   =   1   To   varlen  
                If   skipflag   =   0   Then  
                      clow   =   MidB(binstr,   i,   1)  
                      If   AscB(clow)   >   127   Then  
                            ccc   =   ccc   &   Chr(AscW(MidB(binstr,   i   +   1,   1)   &   clow))  
                            skipflag   =   1  
                      Else  
                            ccc   =   ccc   &   Chr(AscB(clow))  
                      End   If  
                Else  
                      skipflag   =   0  
                End   If  
        Next  
        bin2str   =   ccc  
  End   Function  
   
  Function   str2bin(str)  
          For   i   =   1   To   Len(str)  
                  str2bin   =   str2bin   &   ChrB(Asc(Mid(str,   i,   1)))  
          Next  
  End   Function  
   
  Function   GetFileName(str,path,savtype)  
          Set   fs   =   Server.CreateObject("Scripting.FileSystemObject")  
          str   =   RightB(str,LenB(str)-InstrB(str,str2bin("filename="))-9)  
          GetFileName   =   ""  
          FileName   =   ""  
          For   i   =   LenB(str)   To   1   Step   -1  
                  If   MidB(str,   i,   1)   =   ChrB(Asc("\"))   Then  
                          FileName   =   MidB(str,   i   +   1,   LenB(str)   -   i   -   1)  
                          Exit   For  
                  End   If  
          Next  
          If   savtype   =   0   and   fs.FileExists(path   &   bin2str(FileName))   =   True   Then  
                  hFileName   =   FileName  
                  rFileName   =   ""  
                  For   i   =   LenB(FileName)   To   1   Step   -1  
                          If   MidB(FileName,   i,   1)   =   ChrB(Asc("."))   Then  
                                  hFileName   =   LeftB(FileName,   i-1)  
                                  rFileName   =   RightB(FileName,   LenB(FileName)-i+1)  
                                  Exit   For  
                          End   If  
                  Next  
                        For   i   =   0   to   9999    
                                'hFileName   =   hFileName   &   str2bin(i)  
                                If   fs.FileExists(path   &   bin2str(hFileName)   &   i   &   bin2str(rFileName))   =   False   Then  
                                        FileName   =   hFileName   &   str2bin(i)   &   rFileName  
                                        Exit   For  
                              End   If  
                        Next  
                End   If  
                Set   fs   =   Nothing  
                GetFileName   =   FileName  
  End   Function  
  %>  
   
  Top

2 楼rexsp(真水无香)回复于 2002-09-24 12:02:28 得分 0

<HTML>  
  <HEAD>  
  <TITLE>   post</TITLE>  
  </HEAD>  
   
  <BODY>  
  <form   action=get.asp>  
  <input   name=test   >  
  </BODY>  
  </HTML>  
   
   
   
   
  <HTML>  
  <HEAD>  
  <TITLE>   get</TITLE>  
  </HEAD>  
  <%=request.form("test")%>  
  <BODY>  
   
  </BODY>  
  </HTML>  
   
   
   
   
  Top

3 楼coffee_cn(coffee)回复于 2002-09-24 12:31:45 得分 0

sh.ce.net.cn/web8/tools/up.zipTop

4 楼zzy_ayi(MFX)回复于 2002-09-24 12:39:17 得分 0

高手啊,问题解决了拉,谢谢!flashasp(滾滾長江水)Top

5 楼flashasp(flashasp)回复于 2002-09-24 12:43:21 得分 0

分呢!在那里啊:)Top

相关问题

  • 如何妨止用户在表单中输入asp代码
  • checkbox子表单上的中文value传到主表单上是某种加密的代码,怎样才能解决,急
  • asp中怎样在当页代码中提取表单文本框填写的内容?
  • 请教个简单的问题:asp上传到服务器的代码与源代码是一回事吗?
  • 代码完善:Javascript代码\动态增加表单元素???
  • ASP提交表单求救。
  • 关于登录表单,如何做到客户端验证通不过就无法调用action所指定的asp文件呢?(见几行代码)
  • asp源代码!
  • 改进一个表单提交前的的验证代码?
  • 怎样防止表单的文本框中贴网页代码……

关键词

得分解答快速导航

  • 帖主:zzy_ayi
  • flashasp

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo