TP3.2:上傳預覽+縮圖+水印例項
阿新 • • 發佈:2019-02-15
uploadify上傳預覽+縮圖+水印例項
首先感謝各位大神網友的分享,我只是改改程式碼,讓其更符合自己的業務邏輯
圖片上傳+縮圖+水印處理程式碼:
首先感謝各位大神網友的分享,我只是改改程式碼,讓其更符合自己的業務邏輯
圖片上傳+縮圖+水印處理程式碼:
- //檔案上傳
- Publicfunction _upload( $thumb =false, $thumbWidth ='', $thumbHeight =''){
- $upload =new \Think\Upload();// 例項化上傳類
- $upload->maxSize =3145728;// 設定附件上傳大小
-
$upload->exts = array('jpg','gif','png','jpeg'
- $upload->savePath ='/'. CONTROLLER_NAME .'/';// 設定附件上傳目錄
- $info = $upload->upload();
- if(!$info){
- return array('status'=>0,'info'=> $upload->getError());
- }else{
- if( $thumb ){//生成縮圖
- $image =new \Think\Image();
- foreach($info as $file){
-
$thumb_file
- $save_path ='./Uploads/'.$file['savepath'].'mini_'. $file['savename'];
- $image->open( $thumb_file )->text('德興房產','./data/1.otf',30,'#A7AAA4',\Think\Image::IMAGE_WATER_SOUTHWEST)->save( $thumb_file );
-
$image
- return array(
- 'status'=>1,
- 'savepath'=> $file['savepath'],
- 'savename'=> $file['savename'],
- 'pic_path'=> $file['savepath']. $file['savename'],
- 'mini_pic'=> $file['savepath'].'mini_'.$file['savename']
- );
- }
- }else{
- foreach($info as $file){
- return array(
- 'status'=>1,
- 'savepath'=> $file['savepath'],
- 'savename'=> $file['savename'],
- 'pic_path'=> $file['savepath'].$file['savename']
- );
- }
- }
- }
- }
- <divclass="tab-pane"id="tab3">
- <divclass="row">
- <divclass="col-md-12">
- <divclass="tab-pane">
- <divclass="form-group">
- <inputtype="file"id="upload"class="form-control input-medium"/>
- </div>
- <divstyle="width:100%;float:left;padding:10px20px20px; background-color:#ccc">
- <p>
- <ulclass="imagelist"id="image_result"></ul>
- </p>
- </div>
- </div>
- </div>
- </div>
- </div><!-- END #TAB3 -->
- <divclass="margin-top-10">
- <buttontype="submit"class="btn green ajax-post">確 認</button>
- <ahref="javascript:"onclick="javascript:history.back(-1);returnfalse;"class="btn default">返 回</a>
- </div>
- </div>
- </div>
- </form>
- </div>
- </div>
- </block>
- <blockname="foot">
- <linkhref="__PUBLIC__/assets/plugins/uploadify/uploadify.css"rel="stylesheet"type="text/css"/>
- <linkhref="__PUBLIC__/assets/plugins/uniform/css/uniform.default.css"rel="stylesheet"type="text/css"/>
- <scriptsrc="__PUBLIC__/assets/plugins/uniform/jquery.uniform.min.js"type="text/javascript"></script>
- <scriptsrc="__PUBLIC__/assets/plugins/uploadify/jquery.uploadify.min.js"type="text/javascript"></script>
- <scripttype="text/javascript">
- $(function(){
- var sid ="{:session_id()}";
- $('#upload').uploadify({
- 'swf':'__PUBLIC__/assets/plugins/uploadify/uploadify.swf',
- 'buttonText':'選擇圖片',
- 'formData':{'session_id':sid},
- 'uploader':"{:U('uploadPic')}",
- 'fileTypeDesc':'Image File',
- 'fileTypeExts':'*.jpg; *.jpeg; *.gif; *.png',
- 'auto':true,
- 'removeCompleted':false,
- onUploadSuccess:function(file, data, response){
- $('#progress').hide();
- var result = $.parseJSON(data);
- //錯誤處理。。。
- if(result.status ==0){
- alert(result.info);
- returnfalse;
- }
- //上傳成功
- var id =Math.random().toString();
- id = id.replace('.','_');//生成唯一標示
- var html ='<li class="imageitem" id="'+id+'">';
- html+='<input type="hidden" name="file[]" value="'+result.pic_path+'">';//隱藏域,是為了把圖片地址入庫。。
- html+='<input type="hidden" name="minifile[]" value="'+result.mini_pic+'">';//隱藏域,是為了把圖片地址入庫。。
- html+='<img height="160" width="160" src="__ROOT__/Uploads/'+result.pic_path+'" />';
- html+='<span class="txt">';
- html+='<a title="刪除" href=javascript:remove("'+result.pic_path+'","'+id+'");><img src="__PUBLIC__/assets/plugins/uploadify/remove.png" /></a>';
- html+='<a title="設為封面" href=javascript:tocover("'+result.pic_path+'");><img src="__PUBLIC__/assets/plugins/uploadify/right.png" /></a>';
- html+='</span>';
- html+='<em><input class="form-control" value="'+file.name+'"></em>';
- html+='</li>';
- $('#image_result').append(html);
- },
- onUploadStart:function(){
- $('#progress').text('正在上傳...');//使用者等待提示。
- },
- onInit:function(){
- $("#upload-queue").hide();//隱藏上傳佇列
- }
- });
- });
- function remove(file,id){
- alert('刪除成功!'+"\r\n"+file);
- $('#'+id).remove();
- }
- function tocover(file){
- alert('設為封面成功'+"\r\n"+file);
- }
- function check(){
- if($('input[name="title"]').val()==""){
- toastr['error']('標題不能為空!');
- returnfalse;
- }
- }
- </script>
- </block>