Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[修改] 解决勋章设置期限过期不能申请问题

[复制链接]
liyf 发表于 2013-1-6 22:59:25 | 显示全部楼层 |阅读模式
       这个问题一直保留,更新过这么多次补丁仍未解决,的确有点汗颜了,不知是问题不大不够重视还是故意为之,等了n久,搜了无数次还是没有人出来解决,快无语了。。。。。。。。。。

     算了还是自己动手来的快,实在。。。。。。。。
问题表现就是你设置了勋章的时间限制,等过期后再次申请就提示已申请过了,下图


很多人再问,帖子日期可以追溯到好几年前的,看x2.5还是有这问题。。。。。。。。。那帮写程序的不知道怎么了

其实问题很简单,完全就是程序员疏忽,把pre_forum_medallog表中的status字段数据添加错误,而申请检测条件又取消了这个,聪明的该知道问题所在了吧。


你还不知道,那就继续照做把,修改home_medal.php这个文件,查找下面代码
  1. $medaldetail = DB::fetch_first("SELECT medalid FROM ".DB::table('forum_medallog')." WHERE  uid='$_G[uid]' AND medalid='$medalid' AND type<'3'");
复制代码
修改为
  1. $medaldetail = DB::fetch_first("SELECT medalid FROM ".DB::table('forum_medallog')." WHERE status='1' and uid='$_G[uid]' AND medalid='$medalid' AND type<'3'");
复制代码
睁大眼睛看清楚那里改了

还有个地方
  1. DB::query("INSERT INTO ".DB::table('forum_medallog')." (uid, medalid, type, dateline, expiration, status) VALUES ('$_G[uid]', '$medalid', '$medal[type]', '$_G[timestamp]', '$expiration', '0')");
复制代码
改为
  1. DB::query("INSERT INTO ".DB::table('forum_medallog')." (uid, medalid, type, dateline, expiration, status) VALUES ('$_G[uid]', '$medalid', '$medal[type]', '$_G[timestamp]', '$expiration', '1')");
复制代码
仔细比较下,是不是觉得那个写这段代码的家伙。。。。。。

完成了,赶紧保存试一下吧



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
1314学习网 发表于 2013-1-6 23:17:33 | 显示全部楼层
支持下。。。。
回复

使用道具 举报

 楼主| liyf 发表于 2013-1-7 07:41:13 | 显示全部楼层
1314学习网 发表于 2013-1-6 23:17
支持下。。。。

谢谢支持,希望大家多多顶起来,给跟多人看到,很多人等着解决这个问题
回复

使用道具 举报

无效楼层,该帖已经被删除
无效楼层,该帖已经被删除
李玉郎 发表于 2013-3-18 03:23:32 | 显示全部楼层
谢谢楼主分享,正需要这个。
回复

使用道具 举报

 楼主| liyf 发表于 2013-8-17 10:09:38 | 显示全部楼层
好久没来,谢谢大家支持
回复

使用道具 举报

Bacysoft.cn 发表于 2013-8-17 13:22:46 | 显示全部楼层
Mark下,以后看...
回复

使用道具 举报

reo126 发表于 2015-1-2 18:34:06 | 显示全部楼层
2.5能用这个修改吗?这了这个问题头痛了。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-15 10:43 , Processed in 0.042955 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表