主题:  如何在mysql下把图片加到mysql数据库中

林易

职务:普通成员
等级:3
金币:1.0
发贴:750
#12004/1/27 10:12:52
如题!谢谢!



xilin

职务:普通成员
等级:1
金币:0.0
发贴:83
#22004/1/31 13:20:57
其实很简单,你可以用数值代表图片,例 如存储“1”表示第一幅图,存储“2”表示第二幅图



林易

职务:普通成员
等级:3
金币:1.0
发贴:750
#32004/2/1 13:34:09
谢谢,是不是要吧图片放到x:/mysql/data目录下



circle

职务:普通成员
等级:1
金币:0.0
发贴:189
#42004/2/3 17:25:18
还可以在mysql中保存二进制



5DPHP版主

职务:版主
等级:2
金币:10.0
发贴:291
#52004/2/5 20:00:45
这个问题以前有问过.xilin说的是第一种情况.还有一种情况是把图片以二进制保存到MYSQL中.就是circlechu说的.不过没有特殊情况.一般很少用第二种方法的.



circle

职务:普通成员
等级:1
金币:0.0
发贴:189
#62004/2/11 15:24:17
对,在数据库里面存二进制图片,查询效率不高



xilin

职务:普通成员
等级:1
金币:0.0
发贴:83
#72004/2/12 22:03:44
谢谢,是不是要吧图片放到x:/mysql/data目录下
===========================
不是你可以把图片放在一个文件夹中。
例如你已经获取到图片的记录后:
if (图片的数值)==1;
<img scr……
这样就行了。
不好意思我只能写个大概。



Tung

职务:普通成员
等级:1
金币:0.0
发贴:8
#82004/2/22 22:26:00
字段src记录图片的路径,name记录图片的名字,这样图片在那都可以找到了。



小Bee

职务:普通成员
等级:1
金币:1.0
发贴:284
#92004/3/1 18:11:52
$fp=fopen("filename",'r');
data=addslashes(fread("$fp",filesize("filename"));

通过上面的方法可将图片放入数据库



buzzard

职务:普通成员
等级:1
金币:0.0
发贴:75
#102004/4/30 11:53:55
save
$picData = base64_encode($picvalue);

read
$picvalue= base64_decode($picData);

view 这一步比较麻烦
首先创建文件 pic.php
<?
/*-------上面省去读取数据-------*/
$pictype ={"image/jpeg","image/gif"} //文件类型定义数组很长,这里我简单的写一下
Header("content-type:$pictype[0]"; //这里我用jpg文件举例
echo $picvalue;
?>

在另一个文件里引用pic.php
<?
echo "<img src=\"pic.php?id=1\">"; //假设对应图片数据的id=1
?>

老兄你若对数据库存储附件感兴趣,请联系我,qq:13228560
我用php写了个在数据库里存储各种视频,图片,声音等等附件的文件,功能尚未完善~~