锡纸叉烧肉的做法烤箱:网站制作问题,高分请教(偶初学,纯菜)

来源:百度文库 编辑:中科新闻网 时间:2024/05/12 18:10:38
我做的网站有个数据查询,查出来的结果要有相应名称编号说明,还有对应的图片。是后台查询,但是图片不能存入数据库,查的话相应的编号要对上图片就很难了,请问要怎么做才能简易的将编号与图片对应?
刚知道数据库可以存图片
现在有个问题:我要把存入数据库中的图片在vb.net里的image框里显示出来,在数据库中那个图片的表有2个字段,一个是ID(int型),一个picture(image型),我通过在画面的文本框里输入ID,然后传入数据库,查出对应的picture,取出来的值是byte();然后通过 FileStream 在一个目录下创建一张图,通过 FileStream 的 write 方法把取出来的 byte()型数据写入创建的图片,最后显示出来。主要代码如下:
sqlconn.Open()
sqladapter = New SqlDataAdapter(sqlstr1, sqlconn)
sqladapter.Fill(DataSet11)
Dim data As Byte() = DataSet11.Tables(0).Rows(0).Item(1)
Dim myfilestream As New System.IO.FileStream(Application.StartupPath & "\monkey.bmp", IO.FileMode.Create)
myfilestream.Write(data, 0, data.Length)
myfilestream.Close()
picbox1.Image = New Bitmap(Application.StartupPath & "\monkey.bmp")
但是发现 FileStream的write方法没用,创建的图片是空白0KB的,哪里出错了。说不清的加QQ274759939

建议不要把图片写入数据库

你参考下 winam的过程

1.[假定]在当前目录下建立一个图片文件夹:DataBaseImages
2.数据库中记录编号:MyID----对应图片名---->ImgMyID.jpg[或类似]
3.构造路径:urlstr="DataBaseImages/Img"+ MyID + ".jpg"[根据语言确定表达方式]
4.<img src="<%=urlstr%>" alt="显示该图片">

[图片不可以存入数据库,相信没有那么差的数据库吧!只不过适不适合的问题]
个人方案:[构造文件路径]
1.[假定]在当前目录下建立一个图片文件夹:DataBaseImages
2.数据库中记录编号:MyID----对应图片名---->ImgMyID.jpg[或类似]
3.构造路径:urlstr="DataBaseImages/Img"+ MyID + ".jpg"[根据语言确定表达方式]
4.<img src="<%=urlstr%>" alt="显示该图片">

一般我们在做网站的时候都是把图片的名称存放到数据库中的
所以显示的时候只要把地址给img的src就可以了
很方便
注意一下路径

你用什么的数据库
把数据库的字段类型改一下,应该是支持图片的

还有个方法,在你的数据库里存一个图片的路径,做个调用就可以了

占个地方,问清楚,图片和编号有什么关系?你详细描述一下我给你解决,很容易

给你一个源码好了
自己研究一下,
<img scr="<%
id=request("id")
set rs=server.createobject("ADODB.recordset")
sql="select * from pic where id=" & id
rs.open sql,connpic,1,1
Response.ContentType = "image/jpeg"
Response.BinaryWrite rs("big")
rs.close
set rs=nothing
%>">
数据库存图片的表有id,big属性分别为自动编号、OLE 对象
图片数据存在big内,为长二进制数据。
添加图片到数据库代码是
<%
dim rs,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) 'mydata数据就是图片的二进制数据
'然后写入数据库

Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "pic",connpic,3,2
rs.addnew
rs("big").appendchunk mydata
rs.update
set rs=nothing
%>