今天是:
首 页
┆
信息查询
┆
网站SEO查询工具
┆
CSS编辑器
┆
建站素材
首页
操作系统
工具软件
网络应用
办公应用
软件开发
数据库
平面设计
网站运营
软件新闻/评测/业界动态
|
矢量素材
|
png图标素材
|
导航菜单
|
站长常用代码
Vista
|
Winxp
|
Win2003
|
Linux
|
Windows综合
|
服务器综合
|
FreeBSD
|
注册表
|
Vista
|
Win2008
系统工具
|
媒体工具
|
网络工具
|
杀毒软件
|
联络聊天
网络知识
|
病毒防治
|
网络安全
|
服务器安全
Word教程
|
Excel教程
|
Powerpoint教程
|
Outlook教程
|
排版软件
|
办公软件其他
C教程
|
C++教程
|
java教程
|
C#教程
|
ASP.NET教程
|
JSP教程
|
PHP教程
|
ASP教程
|
XML教程
|
Delphi教程
Oracle
|
SQLServer
|
Sybase
|
DB2
|
MySQL
|
ACCESS
|
Foxpro
|
PowerBuilder
|
数据库开发
Photoship
|
Fireworks
|
Coreldraw
|
Illustrator
|
Flash
|
ImageReady
|
3D教程
|
矢量教程
|
LOGO制作
网站运营
|
网站优化
|
网站策划
|
策划书下载
|
建站心得
|
站长故事
|
网站盈利
|
网页制作
|
网页特效
|
建站素材
当前位置:
首 页
>>
软件开发
>>
ASP教程
>> 如何利用ASP把图片上传到数据库
如何利用ASP把图片上传到数据库
发布于2005-11-10 09:50 来源:
网海拾贝
ASP(Active Server Pages)是Microsoft很早就推出的一种WEB应用程序解决方案,也是绝大多数从事网站开发人员很熟悉的一个比较简单的编程环境。通过ASP我们可以创建功能强大的动态的WEB应用程序。ASP虽然功能很强大,但有些功能用纯ASP代码完成不了,为了能保证开发出功能更加强大的WEB应用程序,我们可以借助调用COM组件。
在日常工作中,例如开发一个“商品网上销售系统”吧,为了使顾客对商品的外观有所了解,也就是顾客在看商品的文字介绍的同时在文字的旁边有该商品的图片加以说明,这样顾客就可以对该商品有个系统的了解,对推销商品有很大的帮助。所以我们在开发系统时当然就要加入图片处理模块,即如何把图片上传到服务器(图片可以放在WEB服务器上某一个文件夹里也可以放在SQL Server服务器里)和如何让上传的图片在浏览器端显示出来,这都是开发人员要考虑到的问题。
上传图片到服务器有多种方法,可以使用文件上传组件也可以使用纯ASP代码来实现。在CSDN的WEB版ASP上经常有网友问这样的问题“如何利用ASP把图片上传到数据库里”,为了方便CSDN需要了解这方面的知识,这篇文章将详细讲解使用ASP上传图片的做法并给出代码,以飨读者。
首先了解一下在程序中用到的各种对象及其语法:
1) Request.BinaryRead()方法
● 使用Request.BinaryRead()方法可以获取提交的文件数据
● 语法
VarReValue= Request.BinaryRead(number)
变量VarReValue返回值保存从客户端读取到的二进制数据;
参数number指明要从客户端读取的二进制数据量的大小。
2) Response.BinaryWrite()方法
● 使用Response.BinaryWrite()方法可以从数据库中获取图片数据并显示到客户端的浏览器中。
● 语法
Response.BinaryWrite data
参数data是要写进客户端浏览器中的二进制数据包。
3) AppendChunk方法
● AppendChunk方法的作用是将二进制数据追加到Field或Parameter对象。
● 语法
object.AppendChunk data
参数data为要追加到Field或Parameter对象中的数据包。
4) GetChunk方法
● GetChunk方法返回二进制数据的内容。
● 语法
object. GetChunk(size)
参数size指明要返回二进制数据的长度,可以是长整型表达式。
5) Request.TotalBytes方法
● Request.TotalBytes方法返回从客户端读取到的数据的字节数,这个值跟上面所提到的number相对应,可以大于或等于number值。
● 语法
number= Request.TotalBytes
大体了解了一些方法及其使用方法后,接下来我们就开始设计数据库和相关编写代码了。
第一步:数据库的设计(以Ms SQL Server7为例):
Create table img --创建用来存储图片的表,命名为img
(
id int identity(1,1) not null,
img image
)
第二步:程序编写,其中省略了用户输入界面,这里只给出很重要的两个文件即图片上传处理(processimg.asp)和显示图片(ShowImg.asp)文件。
1) processimg.asp文件代码:
〈%
Response.Buffer=True
ImageSize=Request.TotalBytes ‘获取提交数据量的总字节数
ImageData=Request.BinaryRead(ImageSize) ‘保存从客户端读取到的数据
‘优化读取到的二进制数据
BnCrLf=chrB(13)&chr(10)
Divider=LeftB(ImageData,Clng(InstrB(ImageData, BnCrLf))-1)
Dstart=InstrB(ImageData, BnCrLf& BnCrLf)+4
Dend=InstrB(Dstart+1, ImageData, Divider)- Dstart
MyData=MidB(ImageData, Dstart, Dend)
‘创建对象实例
Set imgConn=Server.CreateObject(“ADODB.Connection”)
StrConn=”Driver={SQL Server};Server=ServerName;”& _
“Uid=xxxx;Pwd=xxxx;DataBase=DataBaseName”
imgConn.open strConn
Set Rs= Server.CreateObject(“ADODB.RecordSet”)
Sql=”Select * From img Where id is null”
Rs.open sql,imgConn,1,3
‘追加数据到数据库
Rs.AddNew
Rs(“img”).AppendChunk myData
Rs.Update
‘关闭和释放对象
Rs.close
ImgConn.close
Set Rs=Nothing
Set ImgConn=Nothing
%〉
2) ShowImg.asp文件代码:
〈%
Response.Expires = 0
Response.buffer=True
Response.clear
‘创建对象实例
Set imgConn=Server.CreateObject(“ADODB.Connection”)
StrConn=”Driver={SQL Server};Server=ServerName;”& _
“Uid=xxxx;Pwd=xxxx;DataBase=DataBaseName”
imgConn.open strConn
Set Rs= Server.CreateObject(“ADODB.RecordSet”)
Sql=”Select img From img Where id=1” 这里的id可以使用Request(“id”)获得
Rs.open sql,imgConn,1,1
Response.ContentType=”image/*”
Response.BinaryWrite Rs.(“img”).GetChunk(7500000)
‘关闭和释放对象
Rs.close
ImgConn.close
Set Rs=Nothing
Set ImgConn=Nothing
%〉
至此,本文对如何使用ASP上传图片的原理和示例都讲完了,有什么不妥的地方请各位指正,谢谢!同时希望本文能够确实能为需要这方面帮助的网友提供实质性的帮助。
中查找“
如何利用ASP把图片上传到数据库
”更多相关内容
中查找“
如何利用ASP把图片上传到数据库
”更多相关内容
上一篇:
简单快捷实现ASP在线发邮件功能
下一篇:
用ASP实现远程批量文件改名
最近更新
赞助商
·
实例:ASP与ACCESS链接
10-21
·
ASP实现SQL语句日期格式的加减运算
08-29
·
初学ASP编程易犯的一个错误要注意
08-29
·
配置IIS蜜罐与黑客攻击
08-25
·
ASP程序中输出Excel文件实例一则
08-22
·
ASP中文验证码源码提供
07-22
·
ASP错误解决:800a003a错误
04-01
·
ASP关于类的Let,Set和Get的用法的异同
03-19
·
ASP操作XML的类的说明
03-11
·
asp控制xml数据库的6段代码
03-11
·
ASP操作XML文件的主要方法和实现
03-11
共有评论 0 条 网友评分
查看所有评论
发表评论→
学而不思则罔,思而不学则殆,请大胆发表你的见解。
输验证码:
您对此篇文章的评分:1分
2分
3分
4分
5分
热门排行
·
[实例]实现有管理功能的..
·
asp定义数组方法
·
WEB编程开发常用的代码
·
Ajax与ASP开发页面聊天..
·
实时数据刷新网页的
·
微软建议的ASP性能优化2..
·
用ASP实现无组件上传/下..
·
[实例]一个汉字转成拼音..
·
网页防刷新重复提交、防..
·
Microsoft VBScript 运..
最新推荐
·
asp与ajax打造无刷新新..
·
Ajax与ASP开发页面聊天..
·
ASP编程中操作数据库的类
·
用ASP动态生成JavaScrip..
·
ASP通用分页类
·
ASP利用Google实现在线..
·
用ASP实现无组件上传/下..
·
[实例]用XML+FSO+JS实现..
·
[实例]用ASP学做一个在..
·
[实例]利用客户端js实现..
·
[实例]ASP操作XML文件的..
·
[实例]ASP + Serv-u 实..
·
[实例]用Asp隐藏文件路..
·
[实例]用Asp备份与恢复S..
·
[实例]用asp实现QQ在线..
站内搜索
关键词
搜索方式
全部
文章内容
文章标题
文章作者
搜索范围
所有栏目
页面导航
Linux
FreeBSD
注册表
Windows综合
认证考试
微软认证
Macrmedia认证
Adobe 认证
软件水平考试
全国等级考试
Vista
Win2000
WinXP
Win2003
页面特效
图形图象
按钮特效
鼠标事件
浏览窗口
文本特效
状态栏类
表单操作
计数计算
技 巧 类
导航菜单
办公应用
Word教程
Excel教程
网站策划书下载
心得技巧
3D教程
矢量教程
Delphi教程
ImageReady
DB2
Illustrator
QQ空间flash
QQ空间视频模块
杀毒软件
网络应用
常用代码
网页背景素材
Powerpoint教程
Outlook教程
排版软件
办公软件其他
建站素材
字体下载
网页模版
png图标素材
Golive教程
数据库开发
psd分层素材
QQ空间素材
页面背景
生活休闲
Dreamweaver
Javascript/Ajax
HTML/Xhtml
CSS教程
SQLServer
QQ频道
LOGO制作
FLASH
暴笑男女
网页制作
CORELDRAW
软件开发
站内新闻
幽默笑话
文摘欣赏
QQ新闻/技巧
网站建设
平面设计
PHOTOSHOP
FIREWORKS
校园篇
Foxpro
电脑IT篇
MySQL
数据库栏
ACCESS
名人篇
Sybase
Cisco认证
爱情篇
网页特效
PowerBuilder
Oracle
日期时间
操作系统
程序人生
QQ空间大图模块
网站运营
服务器
软件新闻/评测/业界动态
C教程
网站盈利
网络知识
QQ空间制作代码
Windows Server 2008
系统工具
工具软件
媒体工具
QQ个性繁体/资料/签名
C++教程
网站策划
MacOSX
网络安全
QQ宠物
病毒防治
压缩工具
java教程
网站优化
C#教程
QQ头像
图文处理
建站心得
ASP.NET教程
QQ表情
文件管理
站长故事
网络工具
QQ皮肤
矢量素材
PHP教程
QQ游戏
联络聊天
免费资源
ASP教程
JSP教程
QQ工具
其他工具
XML教程
其它
服务器综合
精确匹配
网站首页
-
关于本站
-
网站地图
-
广告合作
-
站点声明
-
RSS订阅
-
联系我们
Copyright © 2005
网海拾贝
.
[蜀ICP备09003013号]
. All Rights Reserved .