请大家帮我一下~~~

asdfasdfdfas 2005-06-30 05:12:32
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)

看了一段asp无组件上传的代码,有的函数不是很明白,
就是这段
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)
leftb,,instrb,midb系什么来的,有什么作用,本人菜鸟一只,请大家帮我一下。
...全文
112 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
白夜花寒 2005-06-30
  • 打赏
  • 举报
回复
晕,我说的是保存在本地硬盘中的,还有你把

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)

这些去掉,才能看到我帖出来的东西,大哥拜托动动脑子.....
asdfasdfdfas 2005-06-30
  • 打赏
  • 举报
回复
我还是不明白,你说用记事本打开图片(打开的应该是从数据库读出来的图片吧)我读取数据库图片的代码是这样的,打开读取的数据是乱码的
<!--#include file="conn.asp"-->
<%
set rs=server.createobject("ADODB.recordset")
sql="select * from imgurl where art_id="&trim(request("id"))
rs.open sql,conn,1,1
Response.ContentType="image/*"
Response.BinaryWrite rs("img").getChunk(8000000)
。。。。。
%>

请问你是如何操作的?
白夜花寒 2005-06-30
  • 打赏
  • 举报
回复
没什么要多说的
白夜花寒 2005-06-30
  • 打赏
  • 举报
回复
-----------------------------7d52922f18f08f2
Content-Disposition: form-data; name="upfile"; filename="C:\Documents and Settings\All Users\Documents\My Pictures\示例图片\梦幻女主2.jpg"
Content-Type: image/pjpeg

? JFIF  ACD Systems Digital Imaging  

这是不加以后的效果.....你不加那几句直接保存图片,然后用记事本打开图片,看看里面的内容,你就明白了
asdfasdfdfas 2005-06-30
  • 打赏
  • 举报
回复
顶~
asdfasdfdfas 2005-06-30
  • 打赏
  • 举报
回复
能详细解释一下吗?
其实我不是很明白那几个运算是怎样理解
instrb(formdata,bncrlf))-1),为什么要减一?
formdata,bncrlf&bncrlf)+4 加四又是怎么回事?
instrb(datastart+1,formdata,divider)-datastart 这样运算又得到什么?
wangwm 2005-06-30
  • 打赏
  • 举报
回复
bncrlf=chrB(13)&chrB(10) ' 这是回车<return>
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)

具体方法参考mid,left,instr

28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧