- 工信部备案号 滇ICP备05000110号-1
- 滇公安备案 滇53010302000111
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
现象:修改密码时,UCenter通知其它应用的密码为空。
解释:UCenter原始程序在修改密码时,其实并没有对密码进行同步传递,看uc_client源码发现,Discuz! 接收的同步密码也只是随机生成的字符串。可能是为了安全或某种原因!
解决:对UCenter的服务器端(uc_server)程序进行修改,添加密码的同步通知!具体操作如下:
1、UCenter后台更改密码后的通知程序:uc_servercontroladminuser.php,将其中的以下代码:
$_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password=');
修改为:
$_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password='.$orgpassword);
2、UC通知程序:uc_servercontroluser.php,将其中的以下代码:
$_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password=');
修改为:
$_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password='.$newpw);
另外,如果是在应用里修改密码,而应用程序使用独立用户数据库,则需要修改ucenter客户端(uc_client)的相应代码:
打开 uc_clientcontroluser.php 查找
$_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password=');
修改为:
$_ENV['note']->add('updatepw', 'username='.urlencode($username).'&password='.$newpw);
售前咨询
售后咨询
备案咨询
二维码
TOP