用的是MYSQL……
网上稍微搜索了一下,有人说是用BLOB这种类型存储图像;然后之前问过学长,是存储图片的路径……有没有人实际做过东西,给点指点呢?谢谢了!
网上稍微搜索了一下,有人说是用BLOB这种类型存储图像;然后之前问过学长,是存储图片的路径……有没有人实际做过东西,给点指点呢?谢谢了!
解决方案 »
- 为什么我的var_dump($file_suffix=="php")总是false?明明值一样的啊.
- 简单的php求助 我的网页怎么运行不了,有错误
- [广州] 诚聘PHP+MySQL 开发人员
- 很冷门的问题!type=image提交错误,在线等
- Apache版块有点冷,就发到这儿来啦
- php中客户端发送json格式的数据后,服务器端怎样解析?
- 为什么,PHP可以在命令行调试?
- php中调用java时报错“can not found class 'Java' in ......”?
- 在编程中上传的问题?
- 初级问题 PHP_SELF 变量应该什么样子?
- 如何实现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);
}