网站discuzQQ互联每次登陆都需要重新注册,这该怎么办?
出现这个问题可能原因:
1对方服务器QQkey出问题,导致每次都需要重新授权(可能性很小)。
2网站授权QQkey问题,可能在授权完成的时候,网站没有成功保存授权记录信息,所以才导致的每次都需要重新注册。(可能性很大)
3网站授权后未成功写入数据库中做记录保存,跟第二条查不多但是也不太相同。
4cookies问题,看看cookies在提交的时候是否正确。
这些不是都通过uc整合的吗?
1、用户注册
$uid = uc_user_register($_POST['username'], $_POST['password'], $_POST['email']);
if($uid <= 0) {
if($uid == -1) {
echo '用户名不合法';
} elseif($uid == -2) {
echo '包含要允许注册的词语';
} elseif($uid == -3) {
echo '用户名已经存在';
} elseif($uid == -4) {
echo 'Email 格式有误';
} elseif($uid == -5) {
echo 'Email 不允许注册';
} elseif($uid == -6) {
echo '该 Email 已经被注册';
} else {
echo '未定义';
}
} else {
echo '注册成功';
}
2、登陆
list($uid, $username, $password, $email) = uc_user_login($_POST['username'], $_POST['password']);
if($uid > 0) {
echo '登录成功';
} elseif($uid == -1) {
echo '用户不存在,或者被删除';
} elseif($uid == -2) {
echo '密码错';
} else {
echo '未定义';
}
3、这个可以修改模板。templates/default/headerhtm
此文件中有id为umenu的div标签,即网页头部导航菜单
4、同样可以修改模板。templates/default/personal_navbarhtm
补充回答:
你真的要好好看ucenter的开发指南了。
5、用户发送信息
uc_pm_send(integer 发送者uid/用户名 , string 接收者uid , string 主题 , string 内容 [, bool instantly , integer 回复信息id , bool 发送者是否根据用户名])
6、具体要看你登录代码。
如选择cookies记录信息。:
list($uid, $username, $password, $email) = uc_user_login($_POST['username'], $_POST['password']);
if($uid > 0) {
setcookie('username', $username, 24 3600);//保留1天
setcookie('password', $password, 24 3600);
echo '登录成功';
} elseif($uid == -1) {
echo '用户不存在,或者被删除';
} elseif($uid == -2) {
echo '密码错';
} else {
echo '未定义';
}
登录代码如果你是这样写的话,那么就可以通过判断$_COOKIE['username'],$_COOKIE['password']是否已定义来判断用户登录。
添加一个会员等级表的字段吧,你是仿discuz论坛自己写论坛呢还是通过第三方注册同步discuz论坛的会员数据?如果是第三方的话要传递一个参数值,discuz的会员等级表应该有自增字段,传递字段名或自增ID就可以了
0条评论