欢迎来到素材无忧网,按 + 收藏我们
登录 注册 退出 找回密码

discuz签名长度限制无效的问题分析及改进方法

时间: 2019-05-23 08:07 阅读: 作者:素材无忧网

问题表现: 后台设置的签名文字最大长度无效,导致被人在签名里挂广告。   原因分析: 出现这个问题的原因是由于官方QQ互联里内置了微博签名的功能,因为使用微博签名的话会导致签名长度设置无效。   具体代码分析: 找到source/plugin/qqconnect/connect.class.php文件 if(submitcheck('profilesubmit')) { $_G['group']['maxsigsize'] = $_G['group']['maxsigsize'] < 200 ? 200 : $_G['group']['maxsigsize']; return; } 其中的$_G['group']['maxsigsize']即为后台设置的签名最大长度,此处可知如果此值小于200,则置为200字节。 此处更改了最大长度的默认值,从而导致后台设置的此用户组的签名最大长度无效。   下面给出改进方法: 在source/plugin/qqconnect/connect.class.php文件里,搜索代码: if(submitcheck('profilesubmit')) { $_G['group']['maxsigsize'] = $_G['group']['maxsigsize'] < 200 ? 200 : $_G['group']['maxsigsize']; return; } 注释掉这段代码。   同时搜索代码: if($result['status'] == 0) { $js = 'a.onclick = function () { seditor_insertunit(/'sightml/', /'[wb='.$result['result']['username'].']'.$result['result']['signature_url'].'[/wb]/'); };'; } else { $js = 'a.onclick = function () { showDialog(/''.lang('plugin/qqconnect', 'connect_wbsign_no_account').'/'); };'; } 改为下面的代码: if($_G['group']['maxsigsize'] > 200){ if($result['status'] == 0) { $js = 'a.onclick = function () { seditor_insertunit(/'sightml/', /'[wb='.$result['result']['username'].']'.$result['result']['signature_url'].'[/wb]/'); };'; } else { $js = 'a.onclick = function () { showDialog(/''.lang('plugin/qqconnect', 'connect_wbsign_no_account').'/'); };'; }

版权声明: 本站资源均来自互联网或会员发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!

转载请注明: discuz签名长度限制无效的问题分析及改进方法

标签:  
相关文章
模板推荐