发现个行为积分的BUG
待回答比如,用户登录的时候默认有一条增加10分的行为,查后台行为日志也能看出来,但是用户的积分一直是没变,经排查,在Application/Common/common/functions.php中execute_action函数里的is_login()的问题造成的,这里上面传入了$user_id,所以,把该函数里的is_login()替换成$user_id即可解决。
还有,这里提2个建议:
1、建议把用户行为做成可针对用户组或者身份的(比如像discuz那样的),比如后台管理组每次登陆增加1分,前台普通用户组每次登陆增加5分,等。。。可以在后台设置。
2、用户行为积分不应该是根据行为记录来判断(action_log表),因为这个表的记录是经常清除的,比如我当天清除一次行为记录,而当天在这清除行为日志操作之前的用户再次登录又会增加一次积分(而行为规则里规定的是24小时只增加一次记录)。这样会造成积分不准确(经测试,确实会多次触发用户行为规则)。
请登录后回答