微信二次开发(生成二维码)

public function qrcodeAdd(){
    	if (IS_GET) {
    	 $this->display();
    	}else{
    		$mp=$this->mp;
    		$arr=I('post.');
    		$arr['mp_id']=$mp['id'];
    		$id=M('weixin_qrcode')->add($arr);


            //调用创建标签
            $this->createTag($arr['scene_str']);

    		include APP_PATH . 'LaneWeChat/lanewechat.php';
    		$ret=Popularize::createTicket($arr['type'],$arr['expire'],$arr['scene_str']);
    		if (isset($ret['ticket'])) {
    			$qrcodefile=Popularize::getQrcode($ret['ticket']);
    			$ret['src']=$qrcodefile;
    			$ret['create_time']=time();
    			M('weixin_qrcode')->where("id=$id")->save($ret);
    			$this->ajaxReturn(array('status'=>1,'msg'=>'ok','url'=>U('qrcode')));
    		}else{
    			$this->ajaxReturn(array('status'=>0,'msg'=>$ret));
    		}
    	}
    }
添加新的二维码
 public function createTag($tagname=""){
        $mp = $this->mp;
        // $tagname = "123";
        $where['mp_id'] = $mp['id'];
        $where['tag'] = $tagname;
        $data = M("tags")->where($where)->find();
        if(empty($data)){
            $api ="http://api.weixin.qq.com/cgi-bin/tags/create?access_token=".getAccess_token();
            $arr = array();
            $arr['tag']['name'] = $tagname;
            $json = json_encode($arr,JSON_UNESCAPED_UNICODE);

            // dump($json);
            // exit;

            include APP_PATH.'LaneWeChat/lanewechat.php';
            $ret = \LaneWeChat\core\Curl::callWebServer($api,$json,'POST');
            if($ret['tag']){
                $row['mp_id'] = $mp['id'];
                $row['tag_id'] = $ret['tag']['id'];
                $row['tag'] = $ret['tag']['name'];

                M('tags')->add($row);
            }
        }
    }

创建标签

如果用户还未关注公众号,则用户可以关注公众号,关注后微信会将带场景值关注事件推送给开发者。

如果用户已经关注公众号,在用户扫描后会自动进入会话,微信也会将带场景值扫描事件推送给开发者。

获取带参数的二维码的过程包括两步,首先创建二维码ticket,然后凭借ticket到指定URL换取二维码。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值