首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

java网站整合discuz的若干有关问题及解决方法(一)

2012-09-14 
java网站整合discuz的若干问题及解决办法(一)java整合discuz中,同步修改密码的问题时候,discuz端发过来的

java网站整合discuz的若干问题及解决办法(一)
java整合discuz中,同步修改密码的问题时候,discuz端发过来的密码为空的问题:

现象:修改密码时,UCenter通知其它应用的密码为空。

解释:UCenter原始程序在修改密码时,其实并没有对密码进行同步传递,看uc_client源码发现,Discuz! 接收的同步密码也只是随机生成的字符串。可能是为了安全或某种原因!

解决:对UCenter的服务器端(uc_server)程序进行修改,添加密码的同步通知!具体操作如下:

1、UCenter后台更改密码后的通知程序:uc_server\control\admin\user.php,将其中的以下代码:

    $_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password=');

    修改为:

    $_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password='.$orgpassword);

2、UC通知程序:uc_server\control\user.php,将其中的以下代码:

    $_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password=');

    修改为:

    $_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password='.$newpw);

另外,如果是在应用里修改密码,而应用程序使用独立用户数据库,则需要修改ucenter客户端(uc_client)的相应代码:

打开 uc_client\control\user.php 查找

    $_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password=');

    修改为:

    $_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password='.$newpw);

热点排行