如何将.jpg .gif .bmp 等图片插入到sql的表中????

daqincanjian 2006-04-19 03:07:45
请教将图片插入到表中的语法,和表的构造!!!
谢谢!!!
...全文
133 15 打赏 收藏 举报
写回复
15 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
雅彦 2006-04-26
showimg.asp:


<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--#include file="conn.asp"-->
<%
Response.Expires = 0
Response.buffer=True
Response.clear
set rs=server.createobject("ADODB.recordset")
sql="select * from img where id="&trim(request("id"))
rs.open sql,conn,1,1
Response.ContentType="image/*"
formsize=rs("img").ActualSize
Response.BinaryWrite rs("img").getChunk(formsize)
rs.close
conn.close
set rs=nothing
set conn=nothing
%>
  • 打赏
  • 举报
回复
雅彦 2006-04-26
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns:hiker="http://www.hiker.com">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<META name="GENERATOR" content="Hiker TechInfo Corporation">
<META http-equiv="Content-Style-Type" content="text/css">
<title>图片显示</title>
<!--include file="../include/common.asp"-->
<%@LANGUAGE="VBSCRIPT" CODEPAGE="CP_ACP"%>
<!--#include file="conn.asp"-->
<script type="text/javascript" src="../js/Common.js"></script>
</head>
<body>
<%
strsql="select * from img"
set rs=server.createobject("ADODB.recordset")
rs.open strsql,conn,1,1
do until rs.eof
whatid=rs("id")
whatuploadtime=rs("uploadtime")
%>
<img src="showimg.asp?id=<%=whatid%>" >
<table width=10,height=10>
<tr>
<td><%=whatuploadtime%></td>
</tr>
</table>
<%%>
<%
rs.movenext
loop%>
</body>
</html>
  • 打赏
  • 举报
回复
daqincanjian 2006-04-26
在process.asp中,对刚输入的mydata进行输出,都为乱码!!
哪位兄弟姐妹给点意见??
  • 打赏
  • 举报
回复
daqincanjian 2006-04-26
下面是我的代码:显示图片时为空,大家看看什么地方有问题!!

pic_to_sql.asp

<center>
  <form name="mainForm" enctype="multipart/form-data" action="process.asp" method=post>
  <input type=file name=mefile><br>
  <input type=submit name=ok value="OK">
  </form>
</center>

process.asp

<%
response.buffer=true
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)
set connGraph=server.CreateObject("ADODB.Connection")
set rec=server.CreateObject("ADODB.Recordset")
connGraph.open"provider=SQLOLEDB;DATA SOURCE=PLA-82DF3E1F057;UID=llcc;PWD=1;DATABASE=电子电路实验考核系统" 'sql 的数据库注意密码和用户名是否正确

dim id
id=2
sql="select * from images"
rec.Open sql,connGraph, 1,3
rec.addnew
rec("id")=id
rec("img").appendchunk mydata
rec.update
rec.close
set rec=nothing
set connGraph=nothing
%>

showimg.asp

<%
Response.Expires = 0
Response.clear
dim id
id = request("id")
set connGraph=server.CreateObject("ADODB.Connection")
set rec=server.CreateObject("ADODB.Recordset")
connGraph.open"provider=SQLOLEDB;DATA SOURCE=PLA-82DF3E1F057;UID=llcc;PWD=1;DATABASE=电子电路实验考核系统" 'sql 的数据库注意密码和用户名是否正确

strsql="select * from images where id="& Clng(id)
'strsql="select img from images where id=1"
rec.open strsql,connGraph,1,1
Response.ContentType = "image/*"
Response.BinaryWrite rec("img").getChunk(0,7500000)
'Response.BinaryWrite rec("img")

rec.close
set rec=nothing
set connGraph=nothing

%>

显示调用:
p><br>
<font color="#0000FF">产品图片:<br>
</font>
<img src="showimg.asp?id=1" width="200" height="200">
</p>

问题就是显示图片为空,不知问题在哪??
急等!!
如有兴趣可发邮件给我:lichen19830601@126.com
  • 打赏
  • 举报
回复
daqincanjian 2006-04-26
我做了一个实验,在process.asp中对刚输入的mydata,formdata,进行输出,
Response.BinaryWrite mydata,
Response.BinaryWrite formdata
均是乱码!???看来在输入的信息有问题??
  • 打赏
  • 举报
回复
mhxz5680 2006-04-25
只是存图片的话FAQ里多的是了就不说了

如果文本和图片一起传的话,要不选择组件上传,要不就选择无组件上传

可以用2个表单分别提交文本和图片数据,一个表单的提交触发另一个表单的提交,两个表单分别

由两个ASP分别处理,一个添加,一个修改,修改那个用延时函数就可以实现纯无组件上传的效果了

数据库该怎么设计怎么设计就怎么设计,图片用二进制就行了
  • 打赏
  • 举报
回复
jiang8360 2006-04-25
学习中
不太懂呀!
  • 打赏
  • 举报
回复
daqincanjian 2006-04-25
提示有这样的错误:
错误的参数个数或无效的参数属性值: 'Response.getChunk'
为什么??????
  • 打赏
  • 举报
回复
wth1150 2006-04-24
这样有个缺点(没测试过),IE6.0中才能正常显示!IE6.0以下没测试过!
  • 打赏
  • 举报
回复
wth1150 2006-04-24
<!--#include file="conn/conn.asp"-->
<%
id=request("id")
set rec=server.createobject("ADODB.recordset")
strsql="select * from prdt_info where prdt_id="&"'"&id&"'"
rec.open strsql,conn
if rec.eof then
response.write "id is invalid!<br>"
else
response.contenttype="image/bmp"
response.binarywrite rec("pimg").getchunk(750000)
end if
rec.close
set rec=nothing
conn.close
set conn=nothing
%>
调用这个程序
<br><font color="#0000FF">产品图片:<br></font>
<img src="1.asp?id=<%=prdt_id%>" height="150" width="200" border=1>
  • 打赏
  • 举报
回复
daqincanjian 2006-04-24
在请教如何把图片从sql中,取出????
  • 打赏
  • 举报
回复
daqincanjian 2006-04-19
http://jluvip.com/code/article.asp?id=42

纯asp 实现图片上传!!
  • 打赏
  • 举报
回复
Larrystudy 2006-04-19
<!-- #include file="../conn/dbCONN.asp" -->
<%
response.buffer=True
'取得文件大小
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)

'建立同数据库的联系
Set rsImg=Server.CreateObject("Adodb.Recordset")
str="select * from ProImg where ProID='"&session("ImgRealID")&"'"
rsImg.Open str,conn,1,3

'判断是否曾经上传过图片,如果上传过就更改图片,否则就添加到数据库中
If rsImg.Eof Then
rsImg.AddNew
rsImg("ProID")=session("ImgRealID")
rsImg("ProPic").appendchunk mydata
rsImg.update
Else
rsImg("ProID")=session("ImgRealID")
rsImg("ProPic").appendchunk mydata
rsImg.update
End If

rsImg.close
Set rsImg=Nothing
'返回到图片上传页,并显示刚上传的图片
response.redirect "ImgIns.asp?id="&session("ImgRealID")&"&ok=Y"
response.End
%>

以上是针对一个 id 对应 一个 img 的
  • 打赏
  • 举报
回复
mhxz568 2006-04-19
用组件上传吧,去FAQ上看一下精华帖吧
  • 打赏
  • 举报
回复
daqincanjian 2006-04-19
这个实在asp网页中实现的!!
请教!!
  • 打赏
  • 举报
回复
相关推荐
发帖
ASP
加入

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
申请成为版主
帖子事件
创建了帖子
2006-04-19 03:07
社区公告
暂无公告