图片上传的问题,急

shijian58 2004-04-08 01:45:01
Microsoft VBScript 运行时错误 错误 '800a0005'

无效的过程调用或参数: 'midb'

/company/uploadimg.asp,行19


<%
dim id,img
formsize=request.totalbytes
if formsize>30000 then
response.write "<script language='javascript'>alert('只允许不大于30k的图片上传');</script>"
response.write "<script language='javascript'>window.location='addcomlogo.asp';</script>"
response.end
end if

formsize=request.totalbytes
formdata=request.binaryread(formsize)
bncrlf=chrB(13)&chrB(10)
divider=leftB(formdata,clng(instrb(formdata,bncrlf))-1)
datastart=instrb(formdata,bncrlf&bncrlf)+4
dataend=instrb(datastart+1,formdata,divider)-datastart
mydata=midb(formdata,datastart,dataend) //该行出错
set rs=server.CreateObject ("adodb.recordset")
sql="select * from company where postid='"&session("postid")&"'"
rs.open sql,conn,2,3

rs("logo").appendchunk mydata
rs.update
response.write("图片上传成功!")
%>
...全文
25 点赞 收藏 5
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinusoid 2004-04-08
http://expert.csdn.net/Expert/topic/2403/2403509.xml?temp=.9905817
回复
flying310 2004-04-08
那个函数应该没问题.应该是其他代码的问题.
回复
flying310 2004-04-08
midb是一个函数和mid同.
Mid 函数
要求
从字符串中返回指定数目的字符。

Mid(string, start[, length])
参数
string
字符串表达式,从中返回字符。如果 string 包含 Null,则返回 Null。
Start
string 中被提取的字符部分的开始位置。如果 start 超过了 string 中字符的数目,Mid 将返回零长度字符串 ("")。
Length
要返回的字符数。如果省略或 length 超过文本的字符数(包括 start 处的字符),将返回字符串中从 start 到字符串结束的所有字符。
说明
要判断 string 中字符的数目,可使用 Len 函数。

下面的示例利用 Mid 函数返回字符串中从第四个字符开始的六个字符:

Dim MyVar
MyVar = Mid("VB脚本is fun!", 4, 6) 'MyVar 包含 "Script"。
注意 MidB 函数与包含在字符串中的字节数据一起使用。其参数不是指定字符数,而是字节数。

Mid()
  FUNCTION: 返回特定长度的字符串(从start开始,长度为length).
  SYNTAX: Mid(string, start [, length])
  ARGUMENTS:
  EXAMPLE: <%
  strTest = "This is a test! Today is Monday."
  response.write Mid(strTest, 17, 5)
  %>
  RESULT: Today
回复
shijian58 2004-04-08
下面的是提交页面
<script language="javascript">
<!--

///////////////////////////////////////////////////////////////////////
//合法性检查
function isOK(thisForm){
var strTemp,strValue,strLen,strExName

/*检查图片类型*/
if(thisForm.file.value!=""){
strTemp=thisForm.file.value
strValue=strTemp.toLowerCase()
strLen=strTemp.length
strExName=strValue.substring(strLen-4,strLen)
if (strExName!=".jpg" && strExName!=".gif"){
alert("请选择jpg或者gif文件!")
return false
}
return true
}
}
//-->
</script>

<body bgcolor="#FFFFFF" text="#000000" leftmargin="1" topmargin="1">
<form name="form1" method="post" action="uploadimg.asp" enctype="multipart/form-data" >
<table width="600" border="0" cellpadding="0" cellspacing="1">
<tr>
<td colspan="2" bgcolor="#006699" height="15"> </td>
</tr>
<tr>
<td height="14" align="right" valign="top" bgcolor="#D2EAFF" class="textBlack">
<div align="right">企业LOGO:</div></td>
<td height="14" bgcolor="#EEF7FF" class="textBlack"> <div align="left">
<input type="file" name="file" size="35" class="textarea">
</div></td>
</tr>
<tr>
<td height="42" valign="top" bgcolor="#D2EAFF" class="textBlack"> </td>
<td height="42" valign="middle" bgcolor="#EEF7FF" class="textBlack"> <p>1、您上传的图片大小请控制在<font color="#FF0000"><b>30K</b></font>以内,否则不允许上传<br>
2、建议你上传的图片为<font color="#FF0000"><b>120*80象素</b></font><br>
3、上传上传图片的格式为JPG或者GIF</p></td>
</tr>
<tr bgcolor="#006699">
<td colspan="2" class="textBlack"> <div align="center">
<input type="submit" name="Submit" value="提交" onClick="if(isOK(form1)){form1.submit()}">
</div></td>
</tr>
</table>
</form>
回复
lions911 2004-04-08
这种代码一般都是大家都一样的,都是互相抄的,怎么会错呢??

还是找找别的问题,比如提交数据没有,是否大于30K的问题吧!
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告