小草根

如何使认证用户能够修改认证信息

作者:小草根   发布时间:2014-12-01 14:39   回复数:0   浏览数:570
小草根
5700小草根管理员
2014-12-01 14:39:03
5700 2014-12-01 14:39:03
修改文件

    [*]source/language/lang_spacecp.php
    [*]source/function/function_profile.php
source/language/lang_spacecp.php【辅助功能,可以不设】

截图中的这句话眼熟吗?没错,这就是有一次Discuz!很蛋疼地更新补丁后出现的
那这和修改认证信息有什么关系呢?暂时不说,在等下function_profile.php的修改教程中我再解释


比如这就是我的认证设置
进入数据库(可通过phpmyadmin)
找到pre_common_member_profile_setting这个表

我们可以看到真实姓名对应的是realname;性别对应的是gender
Dreamweaver等专业软件打开source/language/lang_spacecp.php文件

向QQ一样添加语句

上图是我添加的语句
保存文件

source/function/function_profile.php
打开source/function/function_profile.php文件找到elseif($fieldid=='qq') {
                $html = \"<input type=\\"text\\" name=\\"$fieldid\\" id=\\"$fieldid\\" class=\\"px\\" value=\\"$space[$fieldid]\\" tabindex=\\"1\\" /><p><a href=\\"\\" class=\\"xi2\\" onclick=\\"this.href='http://wp.qq.com/set.html?from=discuz&uin='+$('$fieldid').value\\" target=\\"_blank\\">\".lang('spacecp', 'qq_set_status').\"</a></p>\";
        }


139-141行,对应的样式就是

在这里我给大家解答上上面说过的问题。这段代码,使这项资料前台填写时出现了注释,同时也不是默认的样式了,默认状态下,如果此项设置为认证资料,那么认证后就无法修改了,但是如果增加了这段代码,那么资料填写框的样式就不是原来那样的了,因此原来认证后无法修改认证资料也就不存在了
修改教程
以下教程为 带链接带文字修改样式,如果想去掉其中一项,请自行修改,如果不想添加文字,请将"<p>"-"</p>"这段删掉再进行修改
elseif($fieldid=='{fieldid}') {
                $html = \&quot;&lt;input type=\\&quot;{formtype}\\&quot; name=\\&quot;$fieldid\\&quot; id=\\&quot;$fieldid\\&quot; class=\\&quot;px\\&quot; value=\\&quot;$space[$fieldid]\\&quot; tabindex=\\&quot;1\\&quot; /&gt;&lt;p&gt;&lt;a href=\\&quot;\\&quot; class=\\&quot;xi2\\&quot; onclick=\\&quot;this.href='http://wp.qq.com/set.html?from=discuz&amp;uin='+$('$fieldid').value\\&quot; target=\\&quot;_blank\\&quot;&gt;\&quot;.lang('spacecp', '{lang}').\&quot;&lt;/a&gt;&lt;/p&gt;\&quot;;
        }

进入数据库找到表pre_common_member_profile_setting
title这列找到对应的资料项,将其对应的fieldid替换到上面代码中的[backcolor=rgb(247, 247, 247)]{fieldid},将其对应的formtype替换到上面代码中的{formtype}
将在source/language/lang_spacecp.php文件中修改的项替换到{lang},如下图中的项目

如图中的dqyz_realname
比如我修改好的代码
elseif($fieldid=='realname') {
                $html = \&quot;&lt;input type=\\&quot;text\\&quot; name=\\&quot;$fieldid\\&quot; id=\\&quot;$fieldid\\&quot; class=\\&quot;px\\&quot; value=\\&quot;$space[$fieldid]\\&quot; tabindex=\\&quot;1\\&quot; /&gt;&lt;p&gt;\&quot;.lang('spacecp', 'dqyz_realname').\&quot;&lt;/p&gt;\&quot;;

将代码复制到下图红框区域(实际为空格)和else之间,注意代码格式对齐,好看点

修改后


已经认证了还能修改哦!顺便再开启下修改资料需要审核
完火!!!
原创by Caogen8.Co=>>>小草根

游客
登录后才可以回帖,登录 或者 注册