扫码绑定

来源:互联网 发布:小野妹子学吐槽 知乎 编辑:程序博客网 时间:2024/04/30 01:21

前台:

<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,        })    });}
原创粉丝点击