关于图片与文本同存在数据库中的具体思路
类别: ASP教程
首先,你的表单的类型设为 <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)等等,但具体思路代码仍是上面的代码。如果需要可以和我联系。
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)等等,但具体思路代码仍是上面的代码。如果需要可以和我联系。
- 上一篇: 存储过程对页面访问速度的影响
- 下一篇: 在ASP中使用类
-= 资 源 教 程 =-
文 章 搜 索