用的是MYSQL……
网上稍微搜索了一下,有人说是用BLOB这种类型存储图像;然后之前问过学长,是存储图片的路径……有没有人实际做过东西,给点指点呢?谢谢了!
网上稍微搜索了一下,有人说是用BLOB这种类型存储图像;然后之前问过学长,是存储图片的路径……有没有人实际做过东西,给点指点呢?谢谢了!
解决方案 »
- 【100分】mysql能否根据多列确定唯一?navicat有没有直观的操作方法?
- php调用动态库问题(php扩展)
- 求助 没有值问题 DB值问题
- PHP表单提交中文乱码问题
- 【求指点】move_upload_file 函数不能把文件存入指定目录下。
- 请教:如何在PHP中使用socket+XML发送数据包?
- 我在win2003下开发的PHP网站后台管理,完全不动的移值到linux下,出现问题?
- csubstr函数怎样修改成可截取utf8格式的?
- 请教:我的Cookie在同一个窗口中有效,但是新打开的窗口就不行了,100份奉上
- 在sPKCS7=<? echo $PKCS7 ?>这条语句上老提示缺少语句是什么问题呀?
- 如何实现PHP与应用程序间的通信?
- 一个正则替换问题
数据库里用一字段存储图片在站点相对位置(如果是本站图片)或url(外网上图片);php读取数据库取出路径,如站点下images文件夹的img.gif图片即imgages/img.gif(数据库里全部存储此路径),然后组成完整图片src,$picsrc = http://www.website.com/imgages/img.gif-----即域名地址+取出来的相对路径。外网图片的话,就直接是url了。
前台显示 <img alt=$picalt width="191" height="104" src=$picsrc}
否则可根据图片的数量和访问的频繁程度在两者中取舍
image longblob
size int以下是Yii框架下的两段代码: //储存图片
public function action1()
{
$command = Yii::app()->db->createCommand('set GLOBAL max_allowed_packet=10*1024*1024*1024');
$command->execute();
$imgpath = 'D:/1.bmp'; $sql = 'insert into Images(image, size) values(:image, :size)';
$size = filesize($imgpath);
$imgfp = fopen($imgpath, 'rb');
$data = fread($imgfp, $size);
fclose($imgfp); $command = Yii::app()->db->createCommand($sql);
$command->bindParam('image', $data, PDO::PARAM_LOB);
$command->bindParam('size', $size, PDO::PARAM_INT);
echo $command->execute();
fclose($imgfp);
} //显示图片
public function action2()
{
$sql = 'select image, size from Images';
$command = Yii::app()->db->createCommand($sql);
$reader = $command->query();
$row = $reader->read(); $imgfp = fopen('D:/2.bmp', 'w'); fwrite($imgfp, $row['image'], intval($row['size'])); fclose($imgfp);
}
这个看需要.要考滤到性能的问题.还有上面的代码中多了一个 fclose($imgfp);
楼主要用的话要去掉.
public function action1()
{
$command = Yii::app()->db->createCommand('set GLOBAL max_allowed_packet=10*1024*1024*1024');
$command->execute();
$imgpath = 'D:/1.jpg'; $size = filesize($imgpath); $imgfp = fopen($imgpath, 'rb');
$data = fread($imgfp, $size);
fclose($imgfp); $jpg = new Images();
$jpg->image = $data;
$jpg->size = $size;
$jpg->save(); echo 'ok';
} //显示图片
public function action2()
{
$rows = Images::model()->findAll(); $row = $rows[0]; $imgfp = fopen('D:/2.jpg', 'w'); fwrite($imgfp, $row->image, $row->size); fclose($imgfp);
}