ThinkSNS-应用开发范例-增加积分消费功能
来自站长百科
导航: 上一页
上面的程序基本完成了礼品的全部操作,接下来我们要增加积分消费功能。至于礼品消费的积分类型,是积分或者还是经验,可以在后台设置,详细请看后台程序说明。
首先在发送礼品页面增加显示当前用户所拥有多少积分的功能,我们只要在IndexAction.class.php 文件的Index 方法里增加以下程序即可:
//获取当前用户的积分 $money = getCredit($this->mid,$this->api); $moneyType = getC('creditName'); $this->assign('money',$money[$moneyType]);
在发送礼品的模板里增加以下一行代码:我目前拥有的{$config.creditName}是: {$money}然后在发送礼品的函数里(UserGiftModel.class.php 的sendGift 方法)增加扣除所选礼品的相应积分程序:
//扣除相应积分 $giftPrice = intval($giftInfo['price']); $prices = $userNum*$giftPrice; $type = getC('creditType'); $credit[$type] = '-'.$prices; if(!$this->__setScore($fromUid,$credit)){ return '您的'.getC('creditName').'不足,发送礼品失败!'; }
我们还在增加上面用到扣除积分封装函数:
/** * __setScore * 扣除(或增加)用户相应积分 * @param $uid 用户ID, $credit 积分数,为正时表示增加积分,为负时表示扣除积分 * @return void; */ private function __setScore($uid,$credit){ $test['credit'] = $credit; $test['action'] = 'send_gift'; $test['actioncn'] = '发送礼物'; $res = setUserScore($uid, $test); return $res; }
到这里积分消费功能增加完毕.