イメージ表示コントローラ
class ImageController extends AppController {
public $name = 'Image';
public $uses = array('TImage');
public $autoRender = false;
public $autoLayout = false;
// 初期処理
public function beforeFilter() {
parent::beforeFilter();
}
// 登録イメージ描画処理
public function imageview(){
$param = $this->params['url']['cd'];
$rec = $this->TImage->getTImage($param);
header("Content-type: " . $rec[0]['t_image']['type']);
echo $rec[0]['t_image']['image'];
}
}
テーブル定義
CREATE TABLE IF NOT EXISTS t_image (
imagecd int(11) NOT NULL,
cmt varchar(300) DEFAULT NULL COMMENT '画像コメント',
type varchar(50) DEFAULT NULL COMMENT '画像タイプ',
image longblob COMMENT '画像',
name varchar(300) DEFAULT NULL,
size int(11) DEFAULT NULL,
width int(11) DEFAULT NULL,
height int(11) DEFAULT NULL,
delflg tinyint(2) NOT NULL DEFAULT '0',
insdt timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '登録日時'
) ENGINE=MyISAM AUTO_INCREMENT=272 DEFAULT CHARSET=utf8 COMMENT='イメージ登録テーブル';
モデル
public function getTImage($imagecd = null) {
$sql = "SELECT "
. "* "
. "FROM "
. "t_image "
. "WHERE "
. "imagecd = ?;";
return $this->query($sql,$data);
}
HTML
<img src="/image/imageview?cd='.$imageid.'" />
こちらですが、データベースに保存されているイメージをHTMLイメージタグで表示するロジックになります。
オリジナルソースなので参考までに記載させて頂きます。