|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
总的来说,在这一个月左右的时间中,学到的不少,但是也遇到不少的问题,比如批量图片的上传,一直到现在也不懂,如何实现动态的增加上传图片的数量。 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数据库,
是不是将普通指令归到特权指令中去呢?权限的反省,是放在这一层仍是上一层?
这更多的是看思索的侧重点,是看法式的明晰性仍是代码的简洁,能够仍是
看代码吧,究竟要思索会见量,别的,下层办事层是不是也应当思索权限反省
成绩呢?学会了PHP,那么学其他的语言,肯定速成,反过来也一样,如果你之前学过其他的语言,那么学PHP肯定快。 |
|