当前位置: 首页 > 图文教程 > 网络编程 > ASP > 关于图片与文本同存在数据库中的具体思路

ASP
ASP编程入门进阶(十二):ASP技巧累加(一)
ASP编程入门进阶(十三):Ad & Content Rotator
ASP编程入门进阶(十四):Browser & Linking
ASP编程入门进阶(十五):组件Counters
一些简单的ASP练习
ASP编程入门进阶(十六):FSO组件之驱动器操作
ASP编程入门进阶(十七):FSO组件之文件夹操作
ASP编程入门进阶(十八):FSO组件之文件操作(上)
ASP编程入门进阶(十八):FSO组件之文件操作(中)
ASP编程入门进阶(十八):FSO组件之文件操作(下)
ASP编程入门进阶(十九):ASP技巧累加(二)
ASP中有关双引号,单引号以及&号的解释
ASP编程入门进阶(二十):ADO组件之显示数据记录
ASP编程入门进阶(二十):ADO组件之插入数据记录
ASP编程入门进阶(二十):ADO组件之分页程序
ASP编程入门进阶(二十):ADO组件之修改数据记录
ASP编程入门进阶(二十):ADO组件之删除数据记录
ASP初学者常犯的几个错误(ZT)
无组件上传图片之文件采用方案
ASP编程入门进阶(二十):ADO组件之查询数据记录

ASP 中的 关于图片与文本同存在数据库中的具体思路


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 221 ::
收藏到网摘: n/a

  首先,你的表单的类型设为 <FORM ENCTYPE="multipart/form-data"
ACTION="uploadresult.asp" METHOD=POST>

Please choose a picture to upload:
<INPUT NAME="picture" TYPE=FILE ACCEPT="image/*">
<input name="text1" type=text >
</form>
然后在下一页,用分离的办法先分出文本,此时不能用request.form,应变为
FormData = Request.BinaryRead( FormSize )

FormSize = Request.TotalBytes
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
Response.ContentType = "image/gif"
Response.BinaryWrite MIDB( FormData, DataStart, DataEnd )

这里先分出的是图像
然后在将其二进制转换为文本。(见金华区)
求出大小。

FormSize = Request.TotalBytes
之后用总大小减去刚才求出的大小。得出文本大小。然后用字符串函数得出其值。
最后分别存在数据库中。

注意,此方法不能完成另存为文件。因为Vbscript中的文件对象不能处理二进制格式。(图象事二进制的)
但Vb中可以,所以我们可已利用组件完成以上工作。
我自己使用自己编写的组件,这样即可以完成存为数据库,又可以存位文件。还可以限制大小,文件类型(gif,jpg,Htm,exe)等等,但具体思路代码仍是上面的代码。如果需要可以和我联系。