关于ThinkPHP5.0 使用 uploadify插件

这几天在用THINKPHP5做Restful API,在后台需要上传图片,作为一个好的程序员,肯定得使用各种各样炫酷的插件啦大笑,然后苦逼的事情来了.......

在度娘里面下载了uploadify(可以用ajax显示图片,效果不错),把他打包放在public下的目录里面,一切都准备好了,前台页面是这样的(这个是成功的),具体做法是在html里面写一个input框<input type="file" id="file_upload" multiple="true">

<img style="display: none" id="upload_org_code_img" src="" width="150" height="150">

<input id="file_upload_image" name="image" type="hidden" multiple="true" value="">


然后得自己写个image.js,代码如下:

$(function() {  
    $("#file_upload").uploadify({  
        'swf'             : SCOPE.uploadify_swf,  
        'uploader'        : SCOPE.image_upload,  
        'buttonText'      : '图片上传',  
        'fileTypeDesc'    : 'Image Files',  
        'fileTypeExts'    : '*.gif; *.jpg; *.png',     
        'fileObjName'     : 'file',  
        'onUploadSuccess' : function(file, data, response) {  
             if(response)
            {
                var obj=JSON.parse(data);


                $("#upload_org_code_img").attr("src",obj.data);
                
                $("#file_upload_image").attr("value",obj.data);


                $("#upload_org_code_img").show();


            }
        }  
    });     


});



然后写个控制器image,写个upload方法

<?php
namespace app\admin\controller;
use think\Controller;
use think\Request;
class Image extends Controller
{
    public function upload()
    {
    $file=Request::instance()->file('file');
      
         $info=$file->move('upload');


         $data=array();


         if($info && $info->getPathname())
         {
          $data['status']=1;
          $data['message']="上传成功";
          $data['data']="/".$info->getPathname();
          echo json_encode($data);exit();
         }


         echo json_encode(['status'=>0,'message'=>'上传失败']);


    }

}


然后就可以显示出来图片了,我一开始总是上传不成功,后来一看是 php_ini没配置好,因为一开始的图片得把它放在一个临时文件中,具体做法是找到upload_tmp_dir,把前面的;去掉,然后创建一个目录使upload_tmp_dir=你创建的目录。

希望大家有所收获,有什么疑问,在下方评论哦。

©️2020 CSDN 皮肤主题: 创作都市 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值