新人报到 登录
平城论坛 返回首页

Bigfish的个人空间 https://bbs.sxdt.com.cn/?1 [收藏] [复制] [分享] [RSS]

日志

Discuz! X2在ucenter修改用户名后,前台名字和原来已发过帖的用户名更新办法

已有 1693 次阅读2013-6-16 16:45 |个人分类:科技是第一生产力| 用户名, 大同

新大同网http://www.sxdt.com.cn论坛有版主请求修改自己的用户名,这个id已经用了多年,本来不建议这样做修改,不过迫于这个id下面帖子回复已经成百上千,也就答应了,比较周折。

先是在Ucenter中直接修改了新的会员名,回来disuczX2中看没有变化,还是老用户名,百度搜了官方论坛也找了,更新缓存什么的都试了彻底没用,可能是论坛修改太多的缘故?或者这个数据从08年到现在也5年多了,从最初的6.0 7.0 7.2 X1 1.5 X2 2.5 到现在X3,经过N次升级和变化,和新装的也许有些区别吧。

继续想办法,找见discuz数据库的用户表单,备份,修改用户名,回来前台用户名是更新过来了,可是帖子没有变化,继续搜索,终于找见办法、

当我们在UC后台更改了会员名后,检查下UC后台的通知,当通知成功后再看DZX帖子中的会员,显示为老会员名,这时候需要对旧数据进行更新,具体操作方法如下:登录phpmyadmin选择当前论坛的数据库,点SQL粘贴如下语句:UPDATE pre_forum_post SET author = "newadmin" WHERE author = "admin" 其中admin为老会员名,newadmin为更新后的会员名。 
UPDATE`per_forum_post` SET `author` = '老用户名' WHERE `per_forum_post`.`author` = '新用户名';
补充一点,在改名后,个人空间中的会员名以及个人空间中的访客还是老会员名,所以继续执行以下语句:
UPDATE pre_home_feed SET username = "newadmin" WHERE username = "admin" ;
UPDATE pre_home_visitor SET vusername = "newadmin" WHERE vusername = "admin" 
到前台看看基本上正常了,后来看到相册还是旧用户名,继续寻找

论坛会员该名称后,更新discuz原来发过的帖子用户名pre_home_album,改过来。ok

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 新人报到