如何上传图片(数据库形式)
- 格式:doc
- 大小:228.00 KB
- 文档页数:7
笨小孩工作室
1 如何上传图片(数据库形式)
第一步、创建数据表
用Access建立一个名为db.mdb的数据库文件,创建名为photo的数据表,建立id和img两个字段,设置id为主键,格式为自动编号,img的格式为OLE对象,如下图所示:
第二步、创建上传图片的主页面
创建名为main.asp的文件 笨小孩工作室
2
上传图片首页
enctype="multipart/form-data" >
显示图片
第三步、创建连接文件
创建名为conn.asp的连接文件
<% 笨小孩工作室
3 option explicit
Dim conn
Dim DBPath
Set conn = Server.CreateObject("ADODB.Connection")
DBPath = Server.MapPath("db.mdb")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath
%>
第四步、创建上传图片的传递文件
创建名为up.asp的传递文件
<%
dim rs,sql
set rs=server.CreateObject("ADODB.Recordset")
sql="select * from photo"
rs.open sql,conn,3,2
dim formsize,formdata,bncrlf,divider,datastart,dataend,mydata
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)
rs.addnew
rs("img").appendchunk=mydata
rs.update
rs.close
'释放对象以及重新定向到main.asp页面
set rs=nothing
set conn=nothing
response.write""
%>
第五步、创建显示数据库中上传图片id的文件
创建名为show.asp的文件
<%
dim rs,sql
set rs=server.CreateObject("ADODB.Recordset")
sql="select * from photo"
rs.open sql,conn,1,1
%>
<% do while not(rs.eof) %>
图片<%=rs("id")%>
删除
<%
rs.movenext
loop
rs.close
%>
<%
'释放对象
set rs=nothing
set conn=nothing
%>
第六步、创建显示图片的文件
创建名为showpic.asp的文件
<%
dim rs,sql
'取得参数id
dim id
id=request("id")
set rs=server.CreateObject("ADODB.Recordset")
sql="select * from photo where id=" &id
rs.open sql,conn,1,1
'显示图片
Response.ContentType = "image/jpeg"
Response.BinaryWrite rs("img") 笨小孩工作室
5 rs.close
'释放对象
set rs=nothing
set conn=nothing
%>
第七步、创建删除图片的文件
为了完善程序,创建名为delpic.asp的文件来删除不需要的文件
<%
Dim id
Dim delsql
id=Request.QueryString("id")
delsql="delete * from photo where id="&id
conn.execute(delsql)
%>
下面是显示效果图:
如果未选择图片,则弹出错误信息
如果上传的不是(.gif)格式的文件或(.jpg)格式的文件,则弹出错误信息
笨小孩工作室
6 当选择正确后点击上传按钮,则上传成功后弹出上传成功信息,并且返回到上传主页面
点击显示图片,如下图所示:
查看图片,则点击图片1、图片2……
点击删除,则弹出是否确定删除确认信息
如果点击取消按钮,则不执行删除,若点击确定,则删除所选图片id的图片,并弹出删除成功信息,如下图所示: