多程序整合 UCenter,在新用戶首次注冊(cè)后是沒有同步登錄到其它程序的,也就是說用戶得在其它程序用密碼再登錄一次,以后才能同步登錄,還有就是用戶不是在 Discuz 程序注冊(cè)的話,在 Discuz 登錄時(shí)得手動(dòng)激活,這些都導(dǎo)致用戶體驗(yàn)很不好,不過解決方法很簡(jiǎn)單~ 修改各個(gè)程序目錄下的 ./uc_client/model/user.php 文件,大概在 129 行處的 function add_user 函數(shù)里添加代碼 如 Discuz X 的:
$this->db->query("INSERT INTO `dbname`.pre_common_member SET uid='$uid', username='$username', password='$password', email='$email', adminid='0', groupid='10', regdate='".$this->base->time."', credits='0', timeoffset='9999'");
$this->db->query("INSERT INTO `dbname`.pre_common_member_status SET uid='$uid', regip='$regip', lastip='$regip', lastvisit='".$this->base->time."', lastactivity='".$this->base->time."', lastpost='0', lastsendmail='0'");
$this->db->query("INSERT INTO `dbname`.pre_common_member_profile SET uid='$uid'");
$this->db->query("INSERT INTO `dbname`.pre_common_member_field_forum SET uid='$uid'");
$this->db->query("INSERT INTO `dbname`.pre_common_member_field_home SET uid='$uid'");
$this->db->query("INSERT INTO `dbname`.pre_common_member_count SET uid='$uid', extcredits1='0', extcredits2='0', extcredits3='0', extcredits4='0', extcredits5='0', extcredits6='0', extcredits7='0', extcredits8='0'");