扫码绑定

前台:

<td><a class="show-company_user_qrcode" href="javascript:void(0);" data-id="{$vo.id}"><i class="fa fa-qrcode"></i></i></a></td>

js 扫码绑定

// 二维码绑定
$(document).on('click', '.show-company_user_qrcode', function () {
    var uid = $(this).data('id');
    var url = 'http://wechat.yibuxinxi.com/wechat/bindCompanyUserQrcode';
    $.get(url, {id: uid}, function (result) {
        imagePreviewDialog(result.data.qrcode);
    });
});

js 调用这个函数

public function bindCompanyUserQrcode()
{
    // 允许跨域请求
    header("Access-Control-Allow-Origin: *");
    $id = (int)$_GET['id'];
    $task = Wechat::getSence('\\Dragon\\Company\\CompanyUser', 'bindTask', $id);
    $this->result($task, 0, 'success', 'json');
}

调用 Wechat::getSence()

// create sence: 场景指向 class & actoin & 附带参数
public static function getSence($class, $taskname, $params) {

   $task = $class::{'get'.ucfirst($taskname)}($params);

   $sence = array(
      'class'       => $class,
      'task_name'    => $taskname,
      'task_id'  => $task['id'],
      'timestamp'    => time(),
   );

   $task['sence_id'] = static::instance('sence')->insertGetId($sence);

   $qrcode = static::instance('sdk')->getQRCode($task['sence_id']);
   $task['qrcode'] = 'https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket='.$qrcode['ticket'];

   return $task;
}

返回 task 再用图片生成生成二维码

 imagePreviewDialog(result.data.qrcode);
 /**
 * 查看图片对话框
 * @param img 图片地址
 */
function imagePreviewDialog(img) {
    Wind.css('layer');

    Wind.use("layer", function () {
        layer.photos({
            photos: {
                "title": "", //相册标题
                "id": 'image_preview', //相册id
                "start": 0, //初始显示的图片序号,默认0
                "data": [   //相册包含的图片,数组格式
                    {
                        "alt": "",
                        "pid": 666, //图片id
                        "src": img, //原图地址
                        "thumb": img //缩略图地址
                    }
                ]
            } //格式见API文档手册页
            , anim: 5, //0-6的选择,指定弹出图片动画类型,默认随机
            shadeClose: true,
            // skin: 'layui-layer-nobg',
            shade: [0.5, '#000000'],
            shadeClose: true,
        })
    });
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值