微信小程序多图片上传

微信小程序多图片上传核心代码:

小程序端:写在app.js文件中可全局调用

//多张图片上传

uploadimg: function (data) {

var that = this,

i = data.i ? data.i : 0,//当前上传的哪张图片

success = data.success ?data.success : 0,//上传成功的个数

fail = data.fail ? data.fail : 0;//上传失败的个数

wx.uploadFile({

url: data.url,

filePath: data.path[i],

name: 'file',//这里根据自己的实际情况改

formData:{'num':i},//这里是上传图片时一起上传的数据

success: (resp) => {

success++;//图片上传成功,图片上传成功的变量+1

console.log(resp)

//这里可能有BUG,失败也会执行这里,所以这里应该是后台返回过来的状态码为成功时,这里的success才+1

},

fail: (res) => {

fail++;//图片上传失败,图片上传失败的变量+1

console.log('fail:' + i + "fail:" + fail);

},

complete: () => {

console.log(i);

i++;//这个图片执行完上传后,开始上传下一张

if (i == data.path.length) { //当图片传完时,停止调用

console.log('执行完毕');

console.log('成功:' + success + " 失败:" + fail);

} else {

//若图片还没有传完,则继续调用函数

console.log(i);

data.i = i;

data.success = success;

data.fail = fail;

that.uploadimg(data);

}

}

});

},

服务器端:

/**
*上传图片
*/
public function img(){
    $num = input('post.num');

       $file = $_FILES['file']['tmp_name'];

       $path = time().$num;

       $image = \think\Image::open($file);
       // 返回图片的宽度
       $width = $image->width();
       // 返回图片的高度
       $height = $image->height();

       $image->thumb($width, $height)->save(APP_PATH.'/image/'.$path.'.png');
   }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值