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

ASP
ASP 编程中20个非常有用的例子(一)
ASP 编程中20个非常有用的例子(二)
ASP基础教程:ADO存取数据库时如何分页显示
ASP基础教程:其它的ASP常用组件
ASP基础教程:学习ASP中子程序的应用
ASP基础教程之ASP程序对Cookie的处理
ASP基础教程之实例学习ASP Response 对象
ASP基础教程之ASP AdRotator 组件的使用
ADO初学者教程:ADO 通过GetString()加速脚本
初学者来认识OLEDB和ODBC的区别
ASP常见数学函数 Abs Atn Cos 等详细详解
VBScript新手入门初学教程:VBScript简介
有用的无声递交表单的客户端函数
Windows 2003 安装设置iis
ASP技巧实例:几行代码解决防止表单重复提交
ASP读sql数据时出现乱码问题的解决方法
ASP技巧实例:使用ASP记录在线用户的数量
ASP技巧实例:关于对表单操作的程序
ASP技巧实例:ASP实现最简洁的多重查询的解决方案
ASP实例:利用缓存提高数据显示效率

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 50 ::
收藏到网摘: 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)等等,但具体思路代码仍是上面的代码。如果需要可以和我联系。