时间: 2021-07-31 作者:daque
4。用户模块安排 对于底层数据库,挪用mysql的c api因变量来举行数据库的窜改,里面生存 确定的状况变量(比方用户名,仍旧留给上一层实行?),对上一层,则供给 用户处置的接口。 class usermanage { private: char myuserid[20]; // 用户的id,未登岸前为空 time logintime; // 用户登岸功夫,并用来计划中断功夫 char loginhost[20]; //上站场所。 public: int newuser( char *userid, char *passwd ); 兴建一个用户,确定能否仍旧有,其余材料姑且为空, firstlogintime,权力等设缺省值。 int userlogin( char *userid, char *passwd ); 用户登岸,考证暗号, int changepasswd( char *oldpasswd, char *newpasswd ); 窜改暗号,诉求原暗号普遍。 int changepridata( char *newname, char *newemail, char *newaddr ); 变换基础数据,泥称,email,地方。。。。 int modifynumdata( int addlogin, int addpost ); 窜改作品数,上站度数,等数据。。。。提防挪用东西。 int userlogout(); 用户退出,窜改lastlogin,staytime,loginhost等 // 普遍查问吩咐 int querycommondata( const char * userid, int& loginnum, char * username, int& postnum, time& lastlogin, char *lasthost ); 查问网友基础消息。 // 特权训令,因变量在实行功效前,先确定权力。 int querypridata( const char * userid, char *email, char *addr ); 查问基础消息,普遍人只能查本人,有特权本领查其余人。 int modifyuserlevel( bool isadd, unsigned long level ); 窜改用户的权力, int modifyuserid( char *oldid, char *newid ); char *newemail, char *newaddr ); 窜改用户的基础数据。 int modifyusernumdata( char *userid, int addlogin, int addpost ); 窜改用户的作品数等数据。 int modifyuserpasswd( char *userid, char *newpasswd ); 窜改用户的暗号。 } 之上各个因变量难度不大,都是实行相映的sql语句,考察mysql数据库, 能否将普遍训令归到特权训令中去呢?权力的查看,是放在这一层仍旧上一层? 这更多的是看商量的着中心,是看步调的明显性仍旧代码的简单,大概仍旧 看代码吧,究竟要商量考察量,其余,表层效劳层能否也该当商量权力查看 题目呢?