layui文件上传+ThinkPHP

 1 1.前端html代码
 2 <div class="layui-form-item">
 3     <label class="layui-form-label">修改头像</label>
 4     <div class="layui-input-inline uploadHeadImage">
 5         <div class="layui-upload-drag" id="headImg">
 6             <i class="layui-icon"></i>
 7             <p>点击上传图片,或将图片拖拽到此处</p>
 8         </div>
 9     </div>
10     <div class="layui-input-inline">
11         <div class="layui-upload-list">
12             <img class="layui-upload-img headImage" src="" id="demo1">
13             <p id="demoText"></p>
14         </div>
15     </div>
16 </div>
17 
18 
19 2.前端js代码
20 <script>layui.use(['form', 'layer','upload',"element"],
21     function() {
22         $ = layui.jquery;
23         var form = layui.form,
24             upload = layui.upload,
25             layer = layui.layer;
26         //拖拽上传
27         var uploadInst = upload.render({
28             elem: '#headImg'
29             , url: '{:url("uploadImg")}'
30             , size: 500
31             , before: function (obj) {
32                 //预读本地文件示例,不支持ie8
33                 obj.preview(function (index, file, result) {
34                     $('#demo1').attr('src', result); //图片链接(base64)
35                 });
36             }
37             , done: function (res) {
38                 console.log(res);
39                 //如果上传失败
40                 if (res.code > 0) {
41                     return layer.msg('上传失败');
42                 }
43                 var demoText = $('#demoText');
44                 // demoText.html('<span style="color: #8f8f8f;">上传成功!!!</span>');
45                 $("#imagepath").val(res.image)
46                 layer.msg("上传成功")
47             }
48             , error: function () {
49                 //演示失败状态,并实现重传
50                 var demoText = $('#demoText');
51                 demoText.html('<span style="color: #FF5722;">上传失败</span> <a class="layui-btn layui-btn-mini demo-reload">重试</a>');
52                 demoText.find('.demo-reload').on('click', function () {
53                     uploadInst.upload();
54                 });
55             }
56         });
57         element.init();
58 });
 1 3.后台php代码
 2     // 图片上传
 3     public function uploadImg(){
 4         // 上传代码
 5         $file = request()->file('file');
 6         // 上传到本地服务器
 7         $savename = \think\facade\Filesystem::disk('public')->putFile( 'goods', $file);
 8         $data['image'] = $savename;
 9         $data['code'] = 0;
10 
11         return json($data);
12     }

 

posted @ 2021-12-24 13:45  芒果鱼  阅读(153)  评论(0编辑  收藏  举报