Archives for : 友吧今天

星期六 阴(昨夜 雨) 9~11℃

《铁甲钢拳》

好久没看电影了,下午在“待看电影列表”里选了这部来看。

很不错,期待第二部。


在家健身(32)

  • 俯卧撑 30 + 30 + 35
  • 仰卧起坐 50 * 2

友吧今天

打算把 sports_v3 制作成 discuz 模板,下载了几个 discuz 模板来参考要怎么制作。

星期五 多云(凌晨下过雨,早上起来地上湿的) 9~14℃

友吧今天

继续了解 discuz 的后台设置。

星期三 多云 5~11℃

在家健身(31)

  • 仰卧起坐 60 * 2 (今天每组增加 10 个)

友吧今天

  • 论坛安装百度分享插件。
  • 父版块显示子版块帖子。
  • 域名管理升级到高级版 VDNS,便于使用二级域名泛解析。但是不幸的是,VPS 有域名数量绑定限制,所以 discuz 的二级域名功能用不了。

星期二 阴 2~10℃

友吧今天

  • 首页临时增加“发布动态”入口,管理员可以点这里进去添加全局动态,相当于可以把论坛的某些有价值的帖子推荐到首页(这是临时解决方案,等论坛完善后,首页也会改版)。
  • 解决了“手动添加全局动态”遇到的几个问题:
    显示主题作者的头像、缩略图链接、全局动态可修改。(使用 icon 是否等于 sitefeed 来判断是否为全局动态)

星期一 阴 4~8℃

在家健身(30)

  • 仰卧起坐 50 * 2

友吧今天

  • 周日想了想,确定了版块规划(结合城市规划考虑)。
  • 论坛内测中。
  • 配置伪静态。

 

星期六 多云 2~13℃

discuz x2.5 用户同步注册到 uchome 2.0

花了几天时间,终于解决这个头疼的问题了。

第1步

升级好 ucenter 1.6 后,记得把 uc 1.6 的 uc_client 覆盖 uchome 里面的 uc_client

第2步

参考 这篇日志 设置 discuz x2.5 与 uchome 2.0 的同步登录。

第3步

修改 \discuz\uc_client\model\user.php

找到

$this->db->query("INSERT INTO ".UC_DBTABLEPRE."memberfields SET uid=’$uid’");

在这行下面添加(修改代码中的 uchome 数据库名,如果表前缀也不一样的话,记得修改 uchome_ 表前缀):

$this->db->query("insert into UCH数据库名.uchome_member SET uid=’$uid’,username=’$username’,password=’$password’");
$this->db->query("insert into UCH数据库名.uchome_space SET uid=’$uid’,username=’$username’,ip=’".$this->base->onlineip."’, dateline=’".$this->base->time."’");
$this->db->query("insert into UCH数据库名.uchome_spacefield SET uid=’$uid’,email=’$email’,css=”,privacy=”,friend=”,feedfriend=”,sendmail=”");

第4步

修改 \discuz\source\class\class_member.php

在底下(大概 810 行的位置)找到:

$extra = array(
 ’showid’ => ‘succeedmessage’,
 ’extrajs’ => ‘<script type="text/javascript">’.
  ’setTimeout("window.location.href =\”.$href.’\';", ‘.$refreshtime.’);’.
  ’$(\’succeedmessage_href\’).href = \”.$href.’\';’.
  ’$(\’main_message\’).style.display = \’none\’;’.
  ’$(\’main_succeed\’).style.display = \’\';’.
  ’$(\’succeedlocation\’).innerHTML = \”.lang(‘message’, $locationmessage).’\';’.
 ’</script>’,
 ’striptags’ => false,
);

修改为:

$ucsynlogin = ”;
if($_G['setting']['allowsynlogin']) {
  loaducenter();
  $ucsynlogin = uc_user_synlogin($_G['uid']);
}
$extra = array(
 ’showid’ => ‘succeedmessage’,
 ’extrajs’ => ‘<script type="text/javascript">’.
  ’setTimeout("window.location.href =\”.$href.’\';", ‘.$refreshtime.’);’.
  ’$(\’succeedmessage_href\’).href = \”.$href.’\';’.
  ’$(\’main_message\’).style.display = \’none\’;’.
  ’$(\’main_succeed\’).style.display = \’\';’.
  ’$(\’succeedlocation\’).innerHTML = \”.lang(‘message’, $locationmessage).’\';’.
 ’</script>’.$ucsynlogin,
 ’striptags’ => false,
);

第5步

在 discuz 注册页注册,看看能不能注册成功,如果可以,那下面就不用看了。

如果注册时不能跳转页面(其实已经注册成功),有可能报错:

s is undefined

修改 static/js/common.js, 大约在第 640 行代码,在其中增加一行(见下面加粗的一行)

try {
 s = $(ajaxframeid).contentWindow.document.XMLDocument.text;
} catch(e) {
 try {
  s = $(ajaxframeid).contentWindow.document.documentElement.firstChild.wholeText;
  if(!s) s = $(ajaxframeid).contentWindow.document.firstChild.textContent; // 增加这行
 } catch(e) {
  try {
    s = $(ajaxframeid).contentWindow.document.documentElement.firstChild.nodeValue;
  } catch(e) {
    s = ‘内部错误,无法显示此内容’;
  }
 }
}

第6步

此时再进行注册,可能会报错:

UCenter info: MySQL Query ErrorSQL:INSERT INTO (此处略) Error:INSERT command denied to user (此处略) for table ‘uh_member’Errno:1142

发现是因为数据库用户的权限不足(我是每一个库建了一个数据库用户)。

如果使用 Navicat Lite,在“管理用户”里可以查看到权限。
在 ucenter 用户下面选择 uchome 库,勾选 Insert,保存。

第7步

我在进行以上操作后,终于同步成功了。

第8步

修改 /uchome/source/do_register.php

在最顶上增加

header("HTTP/1.1 301 Moved Permanently");
header("Location: /bbs/member.php?mod=register");
exit();

这样用户访问原来的 uchome 注册页面,会自动转到 discuz 的注册页。

参考资料:


在家健身(28)

  • 仰卧起坐 50 * 2

友吧今天

  • 解决 discuz 同步注册到 uchome.
  • 今天在远程升级了 uc 1.6,安装 discuz x2.5,有了这几天在本地的测试经验,今天安装很顺利。

 

第1661天:了解discuz的后台管理

星期四 晴 2~12℃

友吧今天

  • 了解一下 discuz 的后台管理。
  • 还是没有解决 uchome 和 discuz 同步注册的问题,想了个临时的解决方案:
    统一在 uchome 注册,之后第一次登录 discuz 时需要再输入一次用户名密码,以后就会同步了。
    (不能在 discuz 注册,否则新用户无法正常登录 uchome,只能统一在 uchome 注册)
     

星期三 多云 1~15℃

uchome 和 discuz 登录退出时显示乱码的问题

查看文件:

uchome 的 config.php
discuz 的 config_ucenter.php

找到 UC_API

define(‘UC_API’, ‘/ucenter’); // UCenter 的 URL 地址, 在调用头像时依赖此常量

如果登录退出时显示乱码,把这里的值改为用 http 开头试一下,例如:

define(‘UC_API’, ‘http://www.xxxx.com/ucenter’); // 填写你的 ucenter 地址


discuz x2.5 自动激动用户

论坛后台 -> 站长 -> UCenter设置

是否允许直接激活(选择“是”)


discuz x2.5 与 uchome 2.0 同步登录、退出、修改密码

第1步

查看文件:

uchome 的 config.php
discuz 的 config_global.php

把 cookiedomain 都设置成一样,例如:

// config.php
$_SC['cookiedomain']  = ‘.friends8.com’;
// config_global.php
$_config['cookie']['cookiedomain'] = ‘.friends8.com’;

第2步

查看文件:

uchome 的 config.php
discuz 的 config_ucenter.php

看这两个文件的 ‘UC_API’,是否是正确的 ucenter 地址。

define(‘UC_API’, ‘http://www.xxxx.com/ucenter’); // 填写你的 ucenter 地址

一个快捷且保险的方法是:在 ucenter 后台“应用列表”点击编辑,把最下面的“应用的 UCenter 配置信息”分别复制替换到 config.php 和 config_ucenter.php


在家健身(27)

  • 仰卧起坐 50 * 2

友吧今天

uchome 和 discuz 同步登录、退出、修改密码。

还剩下同步注册未解决。

星期二 晴转多云 5~12℃

友吧今天

尝试 uchome 和 discuz x2.5 同步。

找了一些资料,没解决,这一篇看起来比较靠谱,不过按这上面的修改,还是没解决,比较郁闷。

 

星期日 阴 5~12℃

升级 UCenter1.6 和安装 Discuz! X2.5 时遇到的两个问题

遇到的两个问题:

  1. 升级完成 uc 后,紧接着安装 discuz,安装不成功,页面空白。重启一下 AMPServ,解决。
  2. 安装 discuz 时,提示:

非法用户名,用户名长度不应当超过 15 个英文字符,且不能包含特殊字符,一般是中文,字母或者数字

原来是因为在 ucenter 里把 admin 设置为“禁止的用户名”了,换成别的用户名,或者在 ucenter 里临时取消限制。


在家健身(25)

  • 俯卧撑 30*3;
  • 在小区外慢跑一圈,10 来分钟。

友吧今天

昨晚在本地升级了 UCenter1.6,安装 Discuz! X2.5.

今晚测试一下转换程序,把 UCHome 的数据转换到 Discuz,但是出了一些问题,放弃转换。只要找个方法解决“discuz 和 uch 的同步登录”就行了,没必要转换。