我说说我的思路吧,我是这样写的,把积分处理写成一个公共函数。在需要的地方调用即可。
前提,你的会员信息表里要有积分的字段,我一般用points作为会员的 积分字段。
另外,我会做一个points_list表,来记录积分操作的明细流水。这样的话,积分操作的记录都可以追溯查询。
function setpoints($uid,$points,$txt,$opid=0){ $data=array( 'uid' => $uid, //会员ID,就你要给那个会员操作积分就传入那个会员的ID 'points' => $points,//操作的积分数量,正数为加分,负数为减分; 'optxt' => $txt, //操作理由,简单的积分操作理由; 'optime' => time(), //操作时间 'opid' => $opid //操作员ID,如果为0表示系统操作; ); M('PointsList')->add($data); //写入积分操作明细数据; M('Member')->setInc('points',$points); //更新会员表积分字段; }
复制代码
把这个函数写到公共函数库,我一般放在Common/common.php里,然后在需要处理积分的地方调用就可以了。比如在用户登录的时候,积分+1就可以这样:
function checklogin(){ .........//此处省略 setpoints($uid,1,'登录成功,积分+1'); }