问题描述
||
我正在尝试将一系列图像叠加在一起,并将结果保存到blob字段中的mysql数据库中。我使用的是codeigniter的\'active-record \'语法。我遇到以下错误:
Error Number: 1064</p><p>You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near \'id #48 WHERE `id` = \'5\'\' at line 1
UPDATE `users_thumbnails` SET `thumbnail` = Resource id #48 WHERE `id` = \'5\'
有人可以解释我在做什么错吗?谢谢!
$base = imagecreatefromjpeg(\'application/assets/images/vel1_bg.jpg\');
foreach($array as $key => $value){
$item = imagecreatefrompng(\'application/assets/images/items/item\' . $value[0] . \'.png\');
list($width,$height,$type,$attr) = getimagesize(\'application/assets/images/items/item\'. $value[0] . \'.png\');
imagecopymerge($base,$item,$value[1],$value[2],$width,100);
//imagedestroy($item);
}
$data = array(\'thumbnail\' => $base);
$this->db->where(\'fbid\',$this->session->userdata(\'id\'));
$this->db->update(\'users_thumbnails\',$data);
解决方法
采用
...
ob_start();
imagepng($base);
$baseimg = ob_get_clean();
$data = array(\'thumbnail\' => $baseimg);
...
否则,当您将$ base传递给查询时,它不会自动将其转换为Resource id #48
编辑:捕获内容