jquery和thinkphp利用formData属性ajax上传并,添加水印,裁剪,实现预览
来源:互联网 发布:mac apowersoft 编辑:程序博客网 时间:2024/05/22 08:13
首先新建看控制器部分
IndexController
<?php
namespace Backend\Controller;
use Think\Controller;
class IndexController extends Controller {
publicfunction index(){
$imgList = M('Img')->query('select ImgUrl,ImgNamefrom img where deleted = 0');
$this->assign('imgList',$imgList);
$this->display();//$upload->upload('./upload/images/')
}
Publicfunction ajaxImgUpload(){
$imageSizeArray =array('96,60','265,165','400,248','880,545','240,220');//裁剪规格
$upload = new\Think\Upload($this->getimagetype());#实例化上传类
$fileName = rand(1111, 9999) . time();
$upload->saveName = md5($fileName);
$path =$this->_addFilePath($upload->saveName);
$upload->rootPath = './upload/images/' .$path;
$upload->subName = '';
// 上传文件
$info = $upload->upload();
if(!$info) {
$this->ajaxSuccess('',array('msg'=>$upload->getError(),'isError'=>true));
}else{
$image = new \Think\Image();
$imgPath =$upload->rootPath.$info['uploadFileName']['savename'];
foreach( $imageSizeArray as $sizeArray ){
if( !is_array( $sizeArray ) ){
$sizeArray = explode(',', $sizeArray);
}
$saveName = substr($info['uploadFileName']['savename'], 0,32) . '_'. $sizeArray[0] . '_' . $sizeArray[1] .'.'.$info['uploadFileName']['ext'];
IndexController
<?php
namespace Backend\Controller;
use Think\Controller;
class IndexController extends Controller {