详解官网补丁包20100106本质→非覆盖文件方式升级官网补丁包
因为本站(http://u.cyzone.cn)的2.0二次开发,改动很多,不方便用官方补丁包升级,所以研究了下官网升级包,总结出补丁实际所修改的地方,这样就可以非覆盖方式打补丁了。
请尊重版权,转载请声明出处!
说明:本次官网升级补丁包20100106共修改六个文件!
1、source/space_index.php//修正去他人个人主页领取埋下的红包可能导致自己设置的红包丢失的问题
找到→//红包道具
原: $_SGLOBAL['db']->query('DELETE FROM '.tname('magicuselog')." WHERE uid = '$_SGLOBAL[supe_uid]' AND mid = 'gift'");
替: $_SGLOBAL['db']->query('DELETE FROM '.tname('magicuselog')." WHERE uid = '$space[uid]' AND mid = 'gift'");
2、source/function_common.php//修正用户因时区设置导致领取特定任务奖励出现问题
1)300行左右,找到→function updatetable
原:if(is_array($set_value)) {
$setsql .= $comma.'`'.$set_key.'`'.'='.$set_value[0];
} else {
$setsql .= $comma.'`'.$set_key.'`'.'=\''.$set_value.'\'';
}
替: $setsql .= $comma.'`'.$set_key.'`'.'=\''.$set_value.'\'';
2)在function getreward里(1893行左右)
原: global $_SGLOBAL, $_SCOOKIE;
替: global $_SGLOBAL, $_SCOOKIE, $_SCONFIG;
3)1950行左右,原: $today = sstrtotime(sgmdate('Y-m-d'));
替: $today = sstrtotime(gmdate('Y-m-d', $_SGLOBAL['timestamp']+$_SCONFIG['timeoffset']*3600));
4)1985行左右,原: $start = sstrtotime(sgmdate('Y-m-d H:00:00', $creditlog['starttime']));
替: $start = sstrtotime(gmdate('Y-m-d H:00:00', $creditlog['starttime']+$_SCONFIG['timeoffset']*3600));
3、source/cp_profile.php//修正填写个人资料的时候,在没有填写姓名的时候不能提交的问题
75行左右,找到→if(strlen($setarr['name']) < 4)
原:if(strlen($setarr['name']) < 4)
替:if($setarr['name'] && strlen($setarr['name']) < 4)
4、source/cp_friend.php//修正在部分服务器环境下会产生数据安全的问题
找到→elseif($op == 'group') {
再往下几行(385行左右)找到$multi = '';
原: $multi = '';
替: $multi = $wheresql = '';
5、api/uc.php//修正用户改名的时候分享、投票、活动不能改名的问题
在function renameuser里找到→$_SGLOBAL['db']->query("UPDATE ".tname('album')." SET username='$new_username' WHERE username='$old_username'");
在下面加以下三行
$_SGLOBAL['db']->query("UPDATE ".tname('share')." SET username='$new_username' WHERE username='$old_username'");
$_SGLOBAL['db']->query("UPDATE ".tname('poll')." SET username='$new_username' WHERE username='$old_username'");
$_SGLOBAL['db']->query("UPDATE ".tname('event')." SET username='$new_username' WHERE username='$old_username'");
6、ver.php//版本号
原:define('X_RELEASE', '20090825');
替:define('X_RELEASE', '20100106'); |