学习NO.1 发表于 2015-10-26 09:27:14

修复DISCUZ! X2.5删除短消息等两处BUG

程序毕竟是人写的,有句古话叫做“人无完人”,编程者总有一些想不到的地方,所以程序就会有漏洞,就是我们说的“BUG”,而在有些道勤主机php空间上运行的Discuz! X2.5程序中,有两处比较明显的BUG,第一处就是在删除短消息时,会提示“抱歉,您的操作有误”,第二处就是升级Discuz! X2.5 0901 版本后点击“站点统计”下的“管理团队”和“管理统计”时出现文件错误。这两处BUG是比较常见的,接下来小编为大家讲解如何修复这两处BUG的方法:
一、在删除短消息时,会提示“抱歉,您的操作有误”,这个BUG是原因$gpmid为提交的数组,在common_member_grouppm中,只能接受数字并进行了强制转换。解决方法就是连接FTP工具,/source/include/spacecp/spacecp_pm.php 127行修改如下内容:
$return = C::t(‘common_member_grouppm’)->update($_G[‘uid’], $gpmid, array(‘status’ => -1));
修改为:
foreach($gpmid as $_gpmid)
$return = C::t(‘common_member_grouppm’)->update($_G[‘uid’], $_gpmid, array(‘status’ => -1));
二、解决升级Discuz! X2.5 0901 版本后点击 站点统计 下的 管理团队 和 管理统计 时出现文件错误,解决方法同样是连接FTP,source/class/table/table_common_member.php 第111行左右:
$users += C::t($this->_table.’_archive’)->fetch_all_by_adminid($adminids);
修改为:
$users += C::t($this->_table.’_archive’)->fetch_all_by_adminid($adminids, 0);
希望可以帮助到各位站长朋友!
页: [1]
查看完整版本: 修复DISCUZ! X2.5删除短消息等两处BUG