PHPCMS在会员注册时输入用户名时会在文本框右边提示该用户名是否已经被注册,在注册时发现右边显示未被占用,提交后却提示该用户已经存在。原来第一次检验用户名是否存在只针对了PHPCMS,并未针对Ucenter,这样提交后,在对ucenter中会员数据进行验证后,发现又存在,所以这样就前后不一了。显然这样的用户体验比较差。
在下本PHP比较菜,啄磨了下后,尝试着改了下:
在member.class.php的用户验证函数中针对PHPCMS系统数据库用户表验证的代码下方增加针对Ucenter的验证,这样就实现两次AJAX验证,如果PHPCMS系统中不存在,则再验证Ucenter中是否存在。
PHP代码
- $uid = uc_call("uc_user_register", array($username));
- if($uid <= 0)
- {
- if($uid == -3)
- {
- $this->msg = 'have_registered';
- return false;
- }
- }