注册分销
分销会员表
CREATE TABLE IF NOT EXISTS `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL COMMENT '姓名',
`phone` varchar(16) DEFAULT NULL COMMENT '手机号',
`password` varchar(128) DEFAULT NULL COMMENT '密码',
`fid` smallint DEFAULT NULL COMMENT '推荐人id',
`money` decimal(10,2) DEFAULT NULL COMMENT '金额',
`createtime` int(11) DEFAULT NULL COMMENT '注册时间',
PRIMARY KEY (`id`)
) ENGINE=Innodb AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='分销用户表';
分析
- 用户注册进来,获得的信息,按照需求相关,应该能得到用户信息及推荐人信息(在这里:一般是自己注册时推荐人为空)
- 拿到信息之后入库,自己注册的话fid为0,如果有推荐人,那么fid设置为推荐人的id。此时推荐人第一层上级。
- 已知id,可知推荐人fid,这样子就可以查询出推荐人的上级,层层递进。
- 利用id,fid写一个递归函数,查到当fid为0时,停止。fid为0,也就是最顶层的上级。
- 根据递归函数返回的信息,确认总共级数(这一步很容易确认,返回几组用户信息就知道总共几级了)。
- 总共的级数确认了,写一个按照级数分配奖金的方法,调用方法,负责发放奖金。
文章永久链接:https://tech.souyunku.com/46868