求助:没有可以被缩略的图像资源,谢谢

浏览:658 发布日期:2018/02/24 分类:求助交流


代码如下:对上传后的图片的图片做缩略和水印不成功,DUMP($BinImg)了,是有正确图片位置的,OPEN()中也是有资源的,但是到了thumb()以后就没有了,save地址dump后也是正确的。

没有可以被缩略的图像资源
错误位置
FILE: E:\kfweb\system\ThinkPHP\Library\Think\Image\Driver\Gd.class.php  LINE: 190

function insert(){
$pic=D("image");
$upload = new \Think\Upload();// 实例化上传类
$upload->maxSize = 3145728 ;// 设置附件上传大小
$upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
$upload->rootPath = UPLOAD_PATH."album/"; // 设置附件上传目录// 上传文件
//$upload->saveRule = 'uniqid';
$upload->autoSub = false;
//$upload->uploadReplace = true; //是否存在同名文件是否覆
$info = $upload->upload(array($_FILES['pic']));
if(!$info) {
// 上传错误提示错误信息
$this->error($upload->getError());
$this->mess($up->getErrorMsg(),false);
$album=D("album");
$this->assign("select", $album->formselect("pid", $_POST["pid"], "请选择相册"));
}else {

for($i=0;$i<count($info);$i++){

// 上传成功 获取上传文件信息
$img = $info[$i]['savename'];
$BinImg = $upload->rootPath."$img"; // 获得原图绝对路径
$image = new \Think\Image();
//如果设置了缩略图
if(isset($_POST["thumb"])){
$image->open($BinImg);
$image->thumb(C('THUMBSIZE.WIDTH'), C('THUMBSIZE.HEIGHT'))->save($upload->rootPath."th_".$img);// 生成缩略图
$this->assign("thumb","checked");
}else {
$image->open($BinImg)->thumb(C('PICTURESIZE.WIDTH'), C('PICTURESIZE.HEIGHT'))->save($upload->rootPath.$img);// 如果没有设置缩略图,就把原图安这个设置好的比例缩放
}
//如果设置的水印
if(isset($_POST["water"])){
$image->open($BinImg)->water(UPLOAD_PATH."/sitewater/".C('WATER'), C('POSITION'))->save($upload->rootPath."wa_".$img);//添加水印
$this->assign("water","checked");
}
$data['pid']=$_POST['pid'];
$data['name']=$img;
$data['water']=($_POST["water"]==1) ? 1 : 0;
$pic->data($data)->add();

}

$this->mess('图片添加成功.', true);
$this->redirect("index", "pid/{$_POST["pid"]}");
//$this->display("add");


}
最佳答案
评论( 相关
后面还有条评论,点击查看>>