基于微擎 集卡活动

功能需求:

1、 “ 添加集卡活动 ”  

2、“ 添加卡片 ”

3、用户点击抽卡

4、填入记录表

需要的数据表

集卡活动表:ims_yzpx_sun_card

需要的字段:id、 title、 img_cover(封面图)、img(轮播图)、rule(规则)、prize_details(奖品详情)、drawtimes(抽奖次数)、helptimes(求助次数)、prizenum(奖品总数)、joinnum(参与数量)、joinnum_xn(虚拟参与数量)、winnum(获奖数量)、winnum_xn(虚拟获奖数量)、start_time、end_time、createtime、check_color_one(卡片抽中前颜色)、 check_color_two(卡片抽中后颜色)、uniacid、status、prizename(奖品名称)、prizetype(1=到店  2=物流  3=二者皆可)、

 

卡片表:ims_yzpx_sun_card_font


 

接口中用户执行抽卡

//执行抽卡
    public function doPagecardLog()
    {
        global $_W, $_GPC;
        $uniacid = $_W['uniacid'];
        $data['uniacid'] = $uniacid;
        $id = $_GPC['id'];  //集卡活动的id
        //获取对应活动的集卡卡片
        $fontList = pdo_getall('yzpx_sun_card_font', array('cid' => $id,'uniacid' => $_W['uniacid']));
        $arr=array();
        //将卡片可概率重组数组
        foreach ($fontList as $k => $v) {
            // var_dump($v);exit();
            $arr[$v['id']] = $v['chance'];
            // $arr[$v['font']] = $v['chance'];
        }
        $fid = $this->get_rand($arr); //根据概率获取奖项id
        //根据fid查询对应卡片文字获得
        $font = pdo_fetch("select id,font from ".tablename('yzpx_sun_card_font')." where `uniacid`='$uniacid' and cid='$id' and id='$fid'");
        $data = array(
            'uniacid' => $_W['uniacid'],
            'uid' => $_GPC['uid'],     //用户id  4588
            'cid' => $_GPC['id'],     //集卡活动id  20
            'fid' => $fid,
            'font' => $font['font'],
            'createtime'=>time(),
        );
        $res = pdo_insert('yzpx_sun_card_getlog', $data);
        if ($res) {
            return $this->result(0, 'success', $data);
        } else {
            return $this->result(1, 'error', ['sts' => 0]);
        }
    }

用户抽卡后就需要存入一张记录表里

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值