| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 524 人关注过本帖
标题:ASP中VBscript语言下文件上传代码错误问题,求大神指教!
只看楼主 加入收藏
血契
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-12-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:5 
ASP中VBscript语言下文件上传代码错误问题,求大神指教!
小弟日前做《商务网站设计与实现 》这门课的课设时遇到了一个难题,就是文件的上传系统有问题。我查阅资料,也找朋友看过,就是看不出什么毛病,现在把这段代码发生来,求大神不吝赐教!
这是UPFILE页面的代码:<%
Response.Buffer=True
Server.ScriptTimeout=120
%>
<html>
<head>
<style>
Input
{
    FONT-FAMILY: "Verdana, Arial, 宋体";
    FONT-SIZE: 9pt;
    color: #555555;
    background-color: #fefefe;
    border: 1px solid #555555;
}
Button
{
    FONT-FAMILY: "Verdana, Arial, 宋体";
    FONT-SIZE: 9pt;
    color: #555555;
    background-color: #cccccc;
    border: 1px solid #555555;
}     
        </style>
    </head>
<body bgcolor=#C6EBDE topmargin=0 leftmargin=0 rightmargin=0 bottommargin=0>
<%
If Request.TotalBytes > 10000000 Then
%>
    <script>alert('上传文件大小不能超过1000K!');window.history.go(-1)</script>"
<%
    Response.End
End If
If Request.TotalBytes < 150 Then
%>
    <script>alert('上传文件不能为空!');window.history.go(-1)</script>"
<%
    Response.End
End If
Dim lngLen,bnFormData,bnCrlf,strHead,lngFileStart,lngDataStart,lngDataEnd,bnTemp
lngLen = Request.TotalBytes
bnFormData = Request.BinaryRead(lngLen)
bnCrlf = ChrB(13) & ChrB(10)
strHead = LeftB(bnFormdata,InstrB(bnFormdata,bnCrlf & bnCrlf))
lngFileStart = InstrB(strHead,ChrB(102) & ChrB(105) & ChrB(108) & ChrB(101) & ChrB(110) & ChrB(97) & ChrB(109) & ChrB(101) & ChrB(61)) + 9
bnTemp = RightB(strHead,LenB(strHead) - lngFileStart)
bnTemp = LeftB(bnTemp,InstrB(bnTemp,ChrB(34))-1)
I = LenB(bnTemp)
While MidB(bnTemp,I,1) <> ChrB(92) And I > 0
    I = I - 1
Wend
strFileName=bin2str(RightB(bnTemp,LenB(bnTemp) - I))
Session("imagep")=strFileName

bnDivider = LeftB(bnFormData,CLng(InstrB(bnFormData,bnCrlf)) - 1)
lngDataStart = InstrB(bnFormData,bnCrlf & bnCrlf) + 4
lngDataEnd = InstrB(lngDataStart + 1,bnFormData,bnDivider) - lngDataStart
Session("image") = MidB(bnFormData,lngDataStart,lngDataEnd)
Session("isupload") = True
%>
<span style="font-size:11pt;color:#2a2">已上传文件:
    <%=strFileName%>
</span>
<button onclick="window.open('upload.asp','_self')">修改</button>
</body>
</html>

<%

Function bin2str(binstr)
   Dim intVarlen,clow,ccc,intSkipFlag
   intSkipFlag=0
   ccc = ""
   intVarlen=LenB(binstr)
   For i=1 To intVarlen
       If intSkipFlag=0 Then
          clow = MidB(binstr,i,1)
          If AscB(clow) > 127 Then
             ccc =ccc & Chr(AscW(MidB(binstr,i+1,1) & clow))
             intSkipFlag=1
          Else
             ccc = ccc & Chr(AscB(clow))
          End If
       Else
          intSkipFlag=0
       End If
   Next
   bin2str = ccc
End Function
%>实不相瞒,小弟是管科系的电子商务专业的,编程小白。课设大部分是照参考书上抄的代码。这个是我课设系统中很重要的一个功能,如今竟然无法执行,网站展示商品图片全靠这个上传系统通过OLE对象将图片输入数据库(ACCESS,因为SQL不大会),可是每次都是“Microsoft VBScript 运行时错误 '800a0005'”,求指教啊!
搜索更多相关主题的帖子: 网站设计 border color 资料 
2012-12-26 21:30
血契
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-12-26
收藏
得分:0 
补充个upload页面的代码
<%
Session("image") = Null
Session("isupload") = False
%>
<html>
<head>
<style>
Input
{
    FONT-FAMILY: "Verdana, Arial, 宋体";
    FONT-SIZE: 9pt;
    color: #555555;
    background-color: #fefefe;
    border: 1px solid #555555;
}
Button
{
    FONT-FAMILY: "Verdana, Arial, 宋体";
    FONT-SIZE: 9pt;
    color: #555555;
    background-color: #cccccc;
    border: 1px solid #555555;
}
            
</style>
</head>
<body bgcolor="#C6EBDE" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">
<form name="frmupfile" enctype="multipart/form-data" method="post" action="upfile.asp">
<input type="file" name="imgTemp" size="37"> <input type="submit" value="上传">
</form>
</body>
</html>
2012-12-26 21:36
血契
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-12-26
收藏
得分:0 
之前有个大神说是enctype的问题,可是我的enctype就是multipart/form-data啊,没理由是这个原因啊
2012-12-26 21:51
dzt0001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:5
帖 子:1281
专家分:4998
注 册:2005-10-12
收藏
得分:14 
你说是将文件保存到ACCESS的里,但我没看到任何数据库连接和SQL语句。

----我怎能在别人的苦难面前转过脸去----
2012-12-27 10:44
血契
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-12-26
收藏
得分:0 
因为之前是创建公共的conn动态页,
<%
Dim G_CONN   
Sub ConnectDatabase()
Dim strConnStr
    Dim strDB
    strDB="database/netshop.mdb"   
    Set G_CONN = Server.CreateObject("ADODB.Connection")
    strConnStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(strDB)
    G_CONN.Open strConnStr  
End Sub
Sub closeConn()
      G_CONN.close
      Set G_CONN=Nothing
End Sub
Call ConnectDatabase()   
%>
2012-12-27 19:00
dzt0001
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:5
帖 子:1281
专家分:4998
注 册:2005-10-12
收藏
得分:0 
回复 5楼 血契
那SQL语句呢

----我怎能在别人的苦难面前转过脸去----
2012-12-28 08:54
快速回复:ASP中VBscript语言下文件上传代码错误问题,求大神指教!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020213 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved