本文主要是介绍基于微擎 集卡活动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
功能需求:
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]);}}
用户抽卡后就需要存入一张记录表里
这篇关于基于微擎 集卡活动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!